removed use of node crypto streaming api, and now using final and update methods. Added back options encrypt/decrypt inputEncoding as this is important for using update and final. Encrypt/Decrypt methods now handle buffers as default and will only convert to string if specified in the output encoding.
removed logging statements to clean up.
final buffer is sent with specified encoding so that you can send buffer in and get a string out. Also added test for this.
changed defaults depending on input data type.
fixed tests and upated readme so all code examples and test use pull() function for passing data around instead of pipe which requires more overhead.