Makes storage location configurable.

The default breaks on CI, so need to be configurable for all environments.
I had it like that at first, but the problems lies with side effects. Flapdoodle only deletes the folder if you use the default storage. If you provide one (no matter what it is), it won't clean up after itself. That's why the factory simply gives a default empty one back if it doesn't find a storageLocation set.