safely execute bootstrap functions with filesystem dependencies
update function declarations to use POSIX style syntax
add direnv as a dependency