Refactor SettingsActivity to use a single Fragment

Far cleaner. No use of deprecated APIs. Ensures a similar experience
across devices. Also simplified the dialogs' constructor.
Added MMS APN Splicing to the settings

Thanks to the nifty ApnPreset enum, adding additional presets in the
future will be very easy. An ApnPreset is not just a representation of
the stored database value since it contains the actual APN preset info.

These settings are not active yet.
Implement MMS APN Splicing settings into hooks

The new options for MMS APN Splicing set in XHangouts are now used and
updated at hooktime. This also fixes an issue where the debug option
might be overwritten which would never allow it to be enabled.