Pin.readPulse() functionality

Basically does exactly what the title says. It implements readPulse functionality.

Check out `test/test_read_pulse.js` and mess around with the test to see if it's all good.

Comment/critique to your hearts desire.
I'm using a screenshot of this in my blog post as an example of a "rightward-drifting mess" that happens in async JS.

Consider breaking this into a series of async functions with callback parameters or multiple `test()` calls.