Fixes

A bunch of fixes and improvements. They resolve:

- the reference cell renderer no longer assumes an ObjectId is available, or still exists
- fixes a pre.save middleware

They provide:

- adds a few extra widgets
- updated widgets so that they're now all generators, and accept an object of HTML attributes