Changed structure, added Documentation