Add support in Snap.Snaplet.Test for reusing initializers.

- expose getSnaplet helper that returns a Snaplet and InitializerState
  and expose the InitializerState type
- add closeSnaplet to run cleanup, to be used after all tests have been run.
- add evalHandler' and runHandler' that take Snaplet and
  InitializerState and otherwise parallel evalHandler and runHandler