Added wrappers for `componentWillMount` and `componentWillUnmount`

These are helpful if you need to setup/cleanup event handlers outside of React. An example would be a component that listens for history events to do some routing. Or a component that listens for key events on the document or window object to hide/show a modal dialog.

The new wrappers are called `on-will-mount` and `on-will-unmount` and they are implemented using the same wrapper component as the existing lifecycle wrappers. This PR also renames `on-initial-render` to `on-mount` to make it clear how it relates to `on-will-mount`. Let me know if you disagree with any of the changes, and I'll adjust this PR or open a new one.

Also, I am very happy to have found quiescent. The design goals you stated in your [rationale](https://github.com/levand/quiescent#rationale) fit my current use case very well. Looking forward to seeing how this project develops. Thanks Luke!