Masking all the private fields with getters and setters

This one looks scary but all i did was take out any direct references to fields and replace them with getter/setter calls. If a field did not have a getter/setter i created a new one for it