Allows entering an email (str) directly instead of having to send to Contact objects

In my Django application I want to send pushes to the admins, specifically to their email addresses as registered in the database.

This pull request allows for entering email strings directly just like devices or contacts.
I also refactored a little to make the device/email bit more DRY.

Also in new_contact there was a reference to a nonexistent variable "nickname", so I replaced that with "name" which I assume is what was intended.