Rewrite no wraps

I've completed the code using pipes instead of Ruby FFI. I've added unit tests for all methods and documented the source code. I've also added some extra test data to use with the unit tests.   
Still a bit new to ruby so please do let me know if there's anything that can be improved upon.
Graham