Add some missing pieces (error event) and clean up init parts to what I think makes a cleaner API.
Still lots of inconsistency in Geofencing* and Geofence* interfaces.