add `prepend_*` callback methods

These do just what they say - prepend blocks onto the callbacks
instead of appending like the normal ones do.

This is to aid in setting up complex initialization schemes.

@jcredding ready for review.