changed constructor to allow key to be passed
Merge branch 'enhance-nofilekey'