Moving subroutines out
Working towards automatically using best choice of unique vs non-unique obstacles