Allow sending empty sound push

This is useful for fixing an iOS bug regarding silent pushes:
https://stackoverflow.com/a/19427960/536113
python3: Fix some missing utf8 encodes

Thanks <seth@healthywatt.com> for figuring these out.
Closes #55
apns: Do not consider badge == 0 as unspecified
Treat postgis as a postgres engine

Fixes #57
Release v1.1.0
Fixed a bug where comma turned a variable into a tuple.
HexIntegerField: Fix a deserialization issue on Python 2

Thanks @Microserf for noticing
Handle the case of the extras dict having values that are collections

Fixes #63
APNs feedback feature.

Wrapped the APNs socket calls to connect to either the push service or
the feedback service. Wrapped the socket call with a function to parse
the output.

Added a prune_devices management command and admin API. The management
command deactivates any device that's no longer receiving push
messages.  The admin API only deactivates the selected non-responding
devices.  These both call the get_expired_tokens free function models.py.

Added an Administration section in the readme for the feedback service API.
add category to aps_data dict
Support Django 1.7 migrations.
Improve the travis matrix
Fix tests on 1.7+
Fix broken tests on 3.x
Get username field dynamically in the admin

Fixes #70
Fix APNS_FEEDBACK_HOST url

Fixes #85
Fixed the issue with production and sandbox addresses for APNS Feedback Service beind mixed up
apns: Make APNS_MAX_NOTIFICATION_SIZE a setting

Also bump the limit from 256 to 2048 due to the increase at iOS8's release.

Fixes #79
fix `HexIntegerField.get_prep_value` when value is already a string

value may already be an integer so trying to create a base 16 int from
it fails
Change SSLv3 to TLSv1