Rename tests executable to match .gitignore pattern
Move lib directory within src tree
Clean up code to conform to my coding conventions that somehow I regularly violate in my own code...
Adding documentation that should have been done already