Adds first tests and production code