refactor JSQMessage hierarchy. remove Text and Media subclasses, absorb into single JSQMessage class. close #602