Refactor so Need shares for state and goal are are resolved at resolve time not parse time