Unit tests and project restructuring