Directives split up; refactor location form for reuse, portal Types