Document most everything.

Some things are left undocumented, where they are uninteresting or REALLY
self-apparent. Adds `#[deny(missing_doc)]` to `render` and `device`, but also
some well-placed `#[allow(missing_doc)]`.

Closes #114
See the proposed header in the device state