Restructure project. Add testing framework with example tests.