fruux/sabre-vobject — pull request #160 by Hywan (2014-11-13 09:50:30+00:00)
Title: Implement xCal and xCard support (bis)

Useful links:
* [ ] [RFC6321](https://tools.ietf.org/html/rfc6321), xCal: The XML Format for iCalendar,
* [ ] [RFC6351](https://tools.ietf.org/html/rfc6351), xCard: vCard XML Representation.

:exclamation: **Not ready to merge**, this is a WIP :exclamation:

To-do:
* [ ] require sabre/xml,
* [x] update `composer.json`,
* [ ] sabre/xml requires PHP5.4, hence update sabre/vobject (done by Composer?),
* [ ] if requires PHP5.4, we can use the [`JsonSerializable`](http://php.net/jsonserializable) everywhere (all top-classes having a `jsonSerialize` method),
* [ ] update code accordingly (e.g. short array syntax),
* [ ] update documentation accordingly,
* [x] create the helper in `Sabre\VObject\Reader`,
* [ ] add XML serializer helpers everywhere (e.g. in children of `Sabre\VObject\Node`),
* [ ] timezones used by xCal and xCard are differents, must check the compatibility,
* [ ] create the reader (parser):
* [ ] support properties:
* [x] support property name,
* [x] support property value,
* [x] support property type,
* [ ] support several values,
* [x] support components.

Code review:
* usage of iterators has been heighten.

Left apart for now:
* [ ] [RFC6321, section 3.1. Pre-Processing](https://tools.ietf.org/html/rfc6321#section-3.1),
* [ ] `LIBXML_*` options when reading or writing.