Addition of Safari Push for Websites

This starts the addition of Safari Push.

I've changed the iOSVariant to be now called APNsVariant

There are still some things that need to be done, such as making sure all references to iOS in the javadocs are changed to APNs

Probably some tests to add

on the UI front,  the example implementation needs to update to include a safari version

setup can be a bit of a pain, check here for more info, http://blog.lholmquist.org/safari-push-notifications/


so anyone who wants to test,  GO FOR IT
The deviceToken that safari gives back is uppercase,  however; in the testing i've done,  making the safari token lower case did no harm