add in a default file hash and cleaned up init function a bit

it's a `func()` that's not an abstraction