The next major vobject version will require PHP 5.4
Moved a bunch of classes to PHP 5.4 array syntax and dropped unnneeded 'public'.
Merge branch '3.3'

Conflicts:
	ChangeLog.md
Moving to DateTimeImmutable. (wip)
Work in progress on migration. Lots of issues still.
All tests are passing.
We require PHP 5.5 now.
Temporarily allowing hhvm failures.
I still suck at .yml
Merge pull request #141 from fruux/datetimeimmutable

DateTimeImmutable migration
Dropped a few more clone statements, where we know it's safe.
Merge branch '3.3'

Conflicts:
	ChangeLog.md
Wrong branch alias.
Merge branch '3.3'

Conflicts:
	.travis.yml
Lots of small tweaks from SensioLabs Insight.
More sensiolabs tweaks.
Merge branch 'master' of github.com:fruux/sabre-vobject
Require sabre/xml.
Use ArrayIterator instead of ArrayObject.

Simpler and better performance.
Simplify by extending ArrayIterator.

In this case, we just need to override the `offsetSet` and `offsetUnset`
methods to set the iterator in read-only mode.