refactor blueprints, add path crud