Switch signin to form_tag
Refactor tests to decouple implementation from behaviour