Sync from scratch 

Here is the promised xmas pull request :)

Implemented within the branch:

* Filesystem syncing working / sync to directory back and forth
* WebSync implementation
* lots of unit tests that model different syncing scenarios
* Filesystem / WebSync use the same unit tests with additions to their specific implementation
* same unit tests also reused within rainy to test Rainy
* created data transfer object (DTO) for a Note, and use automatic serialization via DataContract & ServiceStack.Text
* DTOs are extended and thus shared and reused by Rainy, too

whats not in place:

* sync conflict resolution, but failing unit tests for those scenarios are in place
* UbuntuOne compatibility. Also fetching/downloading notes work, deleting/updating does not ,which prevents most unit tests to run. Hard to debug, but since U1 note sync will be gone soon not sure if worth the effort

I used ServiceStack functions a lot, which unfortunately introduces 4 .dll dependencies which are binary-included in the Libs/ folder. Also added Devdefined.OAuth for WebSync as a git submodule, which results in another .dll dep. 

I also wouldn't mind if you rebase the pull request into a single commit, as most of the commits are non-atomic and with unhelpfull comments anyways.