bNotify app: cache last-derived key with associated salt.

If the cache is empty or the salt does not match, it will be derived as before. But if the salt matches the last-derived key, the cached key will be used.

Also, switch to JDK 1.7 source/target compatibility to get support for multicatch. And run go fmt on bnotifyd.go.