Add a timeout to the Nats Dial.  Eliminates long connect hang times.
Merge branch 'pr/9'
Add configurable timeout to ConnectionInfo

- If positive, Connection.Dial() connects with a timeout. If zero (the
  default), does not use a timeout.
- Factor reconnect helper out of serveConnections.
- Fix bug where Client.Disconnect() hangs if client had never connected
  successfully.

[#71366068]

Signed-off-by: Matthew Sykes <matthew.sykes@gmail.com>
Add Vagrantfile and provisioning scripts for testing on Linux

- Base image is trusty. Installs golang, git, and bzr via apt-get.

[#71366068]