Adding access control and cleaning up code. Getting rid of redundant delegate methods.