Major (and much needed!) refactoring of board positioning methods.