Move hooks over to botocore

Botocore also needs to emit events and it makes the
most sense to move the hooks mechanism into botocore
and allow the awscli plugins to import this from
botocore.
Move first_non_none_response to hooks module

This is a utility function that processes event
responses, so it's been moved to botocore.hooks.
Merge branch 'hooks-move' into develop

This moves the hooks/events mechanism into
botocore.

* hooks-move:
  Move first_non_none_response to hooks module
  Move hooks over to botocore