adding timeout to svc.send

@collinvandyck adding a default timeout of 20 seconds around the svc.send call. Not sure if you want to modify this per service Collin. Also I will look at writing a test that overrides the svc.send command on the fly and just sleeps for 30 seconds so that an exception is raised if you think that's a good test.
should we return after we rescue Timeout::Error, and then manually `fail` after the begin/rescue/end block? That way we would not be dependent on the return value of `#receive` (i.e. let's make sure we actually do throw a Timeout::Error)