Added assignment objectives.
Extended basic ball operations and some minor refactoring.
Some cleanup and minor refactoring.
Some refactoring.
Formatting changes.