fully tested and protected Cavy::FirstTimeController