Python 3 ism
get_workspace_by_path() now takes a filter function
Start of refactored and cleaned-up create_workspace/share_dir.