Started writing implementations, tests, random stuff...