Rename stanza elements to match *Element convent

* Message -> MessageElement
* IQ -> IQElement
Rename file & methods by struct name: ElementFactory
Add a base for features state
Add Username auth to FeaturesState
Introduce a new way to store feature states
Introduce new state system by Alex, add some test
Merge pull request #1 from dotdoom/master-features

Feature state implementation