separate crypto and filesystem stuff

I would personally prefer to see these two functionalities in separate modules, here's how I'd do it.