DAVACL & CalDAV Support

I've implemented enough of DAVACL to make it work, and most of the CalDAV spec. There are still some missing features, but I feel there is significant value in the code as it sits now.

On a potentially controversial note; I replaced the xml library with libxmljs. I could not get XPath queries with namespaces working correctly with o3-xml. I also feel that we should be using something like libxmljs for generating XML responses, being that it's generally more robust than building xml using string catenation.