fix(network/tcp): fix misc bugs and brokenness

A number of small fixes:

- Fix syntax errors breaking string interpolation
- Don't use @socket within promise resolver
- Use EventEmitter#once rather than on/off
- Replace EventEmitter#off with EventEmitter#removeListener
chore(indexFiles): add index files to easily require portions of the modules

These portions are optimized for the node-di Injector, and combine into a
single module for its use.
fix(network): don't output reason for socket connection success

Fixes a minor logging bug, looks good now.
feat(client): prototype client now connects to servers

This is a totally barebones client, and currently doesn't do anything interesting.

Things TODO:

- User data and configuration to determine networks to connect to, channels to join, plugins to load, etc
- Actually login as a user and register connection with network
- Logging and web log viewer

Closes #5