added javadocs to some classes, moved some things around in data source