have_group path matcher and provision refactor