Removed Crypto Dependency

Made Context abstract, therefore removing the dependency on crypto. This
increases the flexibility of http since users are not bound to a
specific hashing function. Also note that Buffer is now abstract as
well.