Consistify folding.
Add documentation.
Coding standard fixes.
Fix package name in docs.
Class docs.
Document return value as per coding standards.
Add method docs.
Add folding.
Method reorg and improve docs.