clean-ups
organize modules
added test