Implement thread `format` field

Thread entries now have a flexible `format` specification, which allows the
system to save the format alongside the original text. This allows the
system not to have to convert everything to HTML when storing in the
database
thread: Implement format for Thread::setBody()
Honor thread body format in PDF export
Use strongly typed ThreadBody instances for output
Hide inline attachments on PDF output
Retroactively add the `format` column to ticket_thread

This will make upgrades from osTicket < 1.8.0 substantially faster and more
reliable, considering that the previous ticket threads will not need to be
explicitly converted to html.
Add abstract ::display method to ThreadBody
Merge pull request #757 from greezybacon/feature/thread-format

Reviewed-By: Peter Rotich <peter@osticket.com>