Non blocking methods for 1.8

non blocking methods were of course available prior to 1.9

thought it would be cleaner to implement these for 1.8 before tackling 1.9

note also the updated Rakefile (as a separate commit so you can cherry pick it out if you want)