restructured source code location, separated tests from tutorial source, automated testing