reorganized package structure
added documentation