Stem's exception classes should be moved to the module's top level
Stem's controller library part currently defines & raises some exceptions all of which are defined in the submodule stem.socket.
While it made sense to have them there while the only exceptions that were raised were SocketClosed & SocketError, now that it includes a more non-socket related exceptions than socket related ones I think it makes sense to move them to the module's top level. (Things like InvalidRequest & InvalidArguments).
If we're doing this, I can make the changes along with my controller class modifications.
(stem.socket.InvalidRequest would become stem.InvalidRequest and so on.)