Huge update

* New handlers
* Using the Handler monad