Generate namespaced element on XmlList entries

Things done with this patch:
- Merged #237 
- `@XmlNamespace(uri="http://example.com/namespace")` acts as default namespace
- `XmlDeserializationVisitor`
 - Removed a lot of XPath stuff in flavor of simpler `SimpleXMLElement::children` method
 - Added `$objectMetadataStack` to access class metadata from a property
- `XmlSerializationVisitor`
 - Removed unnecessary element prefixing when the document/node default namespace match the desired namesapce
 - Removed some duplicated code, adding `createElement` and `setAttributeOnNode` methods



Can you make these private?