Added a bunch of features!

Made notifications a subobject.
Made form control a subobject, and added a forms settings that allows
you specify form modes and methods to setup, handle submits, and
cleanup forms.