:paperclip: Added plain text document type

Created `Oto::Text`.

Refactored shared functionality of `Oto::JSON` and `Oto::Text` into an
`Oto::Document` superclass.