Added ability to parse from a file and improved documentation heavily.