Code Cleanup

As described in commit messages added some comments, cleaned up some trailing spaces and then fixed a slight inefficiency where a redundant object was created and hence redundant copy operations. Incremented version to 1.3 when externalising version number to a definition. This change can be accepted at your discretion. Personally if this is not a 'release' version, I would have the version set to 1.3-SNAPSHOT (but that's probably because of my Maven background).