Protected access, removed redundant constructors, added function headers.
Added author details