Starting to refactor Target to separate out code that's needed to fully describe