renamed major structures

also implemented some new methods, tests