Abstracting IPieceLocation, adding MovementFilters

MovementFilters added to MovementProfiles to differentiate bomb and
non-bomb movement