API Refactor round 1: starting to work. First test is running.