renamed some classes
added initial documentation