Just add code+tests, integration to come