Cameron Knight:
	- Add some comments and move some code around.
	- change @example to @usage
	- Initial commit
