[codestyle] Re-organise code so the properties are grouped together.
[doc] Documenting more methods
[minor] Test against master
[minor] Fixed url