Cleaned up, removed unecessary instance varilables, added final keyword,
added comments