Stream direct messages

Added the ability to interpret Direct Message message type in the user stream.

Added factory method `#item_factory` in to `Streaming::Client` to handle the creation of appropriate data type.