models done for now, just need to document and test stuff