Refactor OmniAuth authentication

Implements and closes #31.