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
Fixing merge conflict.
Fix: main_parser -> self.main_parser
Merge pull request #106 from kjkuan/trivial-fix

Fix: main_parser -> self.main_parser
Updated based on recent changes to botocore and _services.json file.
WIP commit
Missing an import statement.
removing unnecessary code. Fixing pipe command for Windows.