cleaned up some code
change for consistency
added final tags to most methods parameter