Gitignore cabal sandbox files.
add encryption functions that take salt argument

IO cannot be used in some situations, e.g. an acid-state based
password store, so add variants of the encryptPass functions that
have an explicit salt argument, as well as a function to generate a
random salt.
Fix parens in bufLen check
Merge branch 'feature/pass-the-salt' of https://github.com/frasertweedale/scrypt into frasertweedale-feature/pass-the-salt
Add pure encryption functions. Closes #4.

In some situations, e.g. in STM or acid-state transactions, IO can not be used.
This change adds pure variants of encryptPass for these situations. A function
to generate a Salt is also exposed.
Update documentation
Bump version to 0.5.0