Start progress event callbacks off as null instead of empty functions.

- Apparently some libraries will null them out in certain circumstances,
  so make sure we handle it by default.

Fix #85