This additionally makes the password get hashed more often and we create an 'iv' from it as well.
To avoid recompiles and such generally to simplify stuff, this moves all the code into a static lib that is then linked with by the various apps (including tests).