First commit, some tests from first part of implementation