Request hooks

This is the result of a conversation Mitch and I had about how to treat some request logging code I've been manually migrating from version to version of boto. I felt it was really useful for evaluating the aws API usage of an application. You can detect excessive usage, redundant calls, etc by running "tail -f" on this log file. He suggested avoiding many changes in boto/connection.py by setting up hooks that would let the logging be an add-on. So, that's what I've done. I don't even really need to put the code that's in boto/requestlog.py into this PR, as long as the hook capability is there. Maybe it could be in a different part of the repo as an example, if it isn't installed with setup.py?