Reorganized, added basic functionality.