* Update `add_license` script
* run script
* add `remove duplicate lines script` and run it
* Revert changes `English spaces`
* strip whitespaces
* Revert `GPL` in files with `apache/mit license`
* don't append `gpl license` in files with other lic
* Don't append `gpl header` in files with other lic.
* re-ran script
* include c and cpp files too
* remove duplicate header
* rebase nit
* Add license and readme
* Use pure rust implementation
* Bump version to 0.1.1
* Don't use C, prefer the pure Rust implementation
* Add test for `write_keccak`
* Bump version
* Add benchmarks
* Add benchmarks
* Add keccak_256, keccak_512, keccak_256_unchecked and keccak_512_unchecked – mostly for compatibility with ethash
* Remove failed git merge attempt from external git repo
Cargo.lock updates
* whitespace
* Mark unsafe function unsafe
* Unsafe calls in unsafe block
* Document unsafety invariants
* Revert unintended changes to Cargo.lock
* Rebase and fix compilation errors (tests not yet fixed)
* Use `debug_assert` over `assert`
* Fix tests
* Assert safety, clean up
* Fix up stale cache removal, move one assert to debug_assert
* Remove printlns
* Add licenses
* Fix benches
* Inline some no-ops in a hot loop that weren't being inlined
* Add spooky comment to make sure no-one removes the inlining annotations
* Minor cleanup
* Add option to switch between mmap and ram
* Flag ethash to use less memory when running light client
* Fix tests
* Remove todo comment (it's done)
* Replace assertion with error return
* Fix indentation
* Use union instead of `transmute`
* Fix benches
* Extract to constants
* Clean up and fix soundness holes
* Fix formatting
* Ignore missing-file errors
* Make incorrect cache size an error condition instead of a panic, remove dead code
* Fix compilation errors from rebase
* Fix compilation errors in tests
* Fix compilation errors in tests