fake timer creation returns an object having .ref() and .unref() calls, so that
nodejs timer functionality can be supported
update fake timer addTimer to return object or number based on calling
setTimeout, and checking its type.  this should give mock returns consistent
with the underlying interpreter.
Fix an issue passing NaN to spy#calledWith (Issue #441)
Fix Travis build

Travis seems to have an older npm version installed and does not know
about ^ yet. Changed the dependency to the good old >= thing work
around this.
update timer code per suggestions from @mantoni, pull request #437
Merge pull request #437 from benfleis/master

fake timer creation returns an object having .ref() and .unref() calls