Classes inheriting from [url=http://api.silverstripe.org/sapphire/model/DataObject.html]DataObject[/url] (which includes Page), have several "on" events, including onBeforeWrite() and onAfterWrite(), which you can override.
More details: http://doc.silverstripe.com/doku.php?id=datamodel#onbeforewrite
I'm going to guess that bulkUpdate would go as an action in your controller, but I'm not sure as I've not worked much with FormAction. Have you looked at how FormAction is used in the core files? You might find some clues there.