v1.0.2 More robust crash handling

v1.0.2 Adds a few small changes which make the SDK more robust to crashes:
- Reduced time between changing event status to sent and sending data to server. This reduces the window during which a crash can adversely affect the SDK.
- Reset any events with status 'sending' to 'new' on launch. This provides a failsafe which means even if a crash occurs at the worse moment, the worst case scenario is the events are resent on the next launch. In exceptional circumstances this could lead to events being sent twice.
- SDK handles case when build is supplied as nil. This is to avoid a crash caused by the user supplying 'Nil' for the build instead of leaving it out completely.