Test suite basics, connection port and agent/endpoint shutdown enhancements

The goal of this pull request is to add tests to virgo.js. 
- [x] Adds tape module for testing
- [x] Creates test for heartbeats feature

This PR also offers a couple other enhancements:
- [x] Adds option argument to both agent and endpoint constructors, so that a non-privileged port may be specified
- [x] Enhances shutdown methods of both agents and endpoints so that shutdown occurs gracefully.
samething here ... just put callback.