prepend callbacks on service handlers

This adds 4 callback DSL methods to the service handlers: prepend_*
for before/after init/run.  The regular methods _append_ callbacks;
these methods _prepend_ callbacks.

Note: I switched to a more "one liner" approach to defining the
callback DSL methods to make it easier to read.  I also reorganized
the tests to make them more robust and explicit.

Closes #94.

@jcredding sorry the diff is rugged - I chose to implement the DSL methods and tests more like we've done it in our big apps - these are just style changes and more explicit testing, but it masks the fact that I am really only adding 4 callback DSL methods and their tests.  Ready for review.