Fixes improper Redcarpet options usage

The Redcarpet HTML object needs its own new constructor and its own
options hash.

Also, simplifies the associations statements, and adds an item_type
validator.