Rearranged package organzation, also attempting documentation of inner constructor.