Refactor of the collectors and getters

Changes allow for easier extension of this. Also added some options for users. See updated read me.