WIP : major refactor of socket wrapper to match sails.io.js behavior for .10+

This will probably break some things, so let's not merge quite yet.

- Implements the TmpSocket idea from sails.io.js, meaning it will queue up requests before the socket is connected. Though as I'm typing this i'm realizing its not flushing properly.
- cleans up some of the logic regarding callbacks / promises.
- similar to sails.io.js, but conforming to Angular's $http behavior (vs. jQuery's ajax) - http://docs.angularjs.org/api/ng/service/$http for details on that.