Update documentation.

Updated the codes documentation and fixed some typos all over the code.
Phone number formatting is now done at runtime when its displayed.
Use double-under varbiable format for version and author.