anchor.diff:  	* If you are diagonally adjacent, ensure you can pass through at least one of the mutually adjacent square.
   		* Passing through in this case ignores anything with the LETPASSTHROW pass flag, such as tables, racks, and morgue trays.
   */
  -/turf/Adjacent(var/atom/neighbor, var/atom/target = null)
  +/turf/Adjacent(atom/neighbor, atom/target = null, atom/movable/mover = null)
   	var/turf/T0 = get_turf(neighbor)
   
   	if(T0 == src) //same turf
  
positive.code: 	// Non diagonal case
  	if(T0.x == x || T0.y == y)
  		// Check for border blockages
  		return T0.ClickCross(get_dir(T0,src), border_only = 1, target_atom = target) && src.ClickCross(get_dir(src,T0), border_only = 1, target_atom = target)
  
  	// Diagonal case
  	var/in_dir = get_dir(T0,src) // eg. northwest (1+8) = 9 (00001001)
  
negative.code: 	This is defined as any dense ON_BORDER object, or any dense object without LETPASSTHROW.
  	The border_only flag allows you to not objects (for source and destination squares)
  */
  /turf/proc/ClickCross(target_dir, border_only, target_atom = null, atom/movable/mover = null)
  	for(var/obj/O in src)
  		if(mover && O.CanPass(mover,get_step(src,target_dir)) || !mover && !O.density)
  			continue
  		if(O == target_atom || (O.pass_flags & LETPASSTHROW)) //check if there's a dense object present on the turf
  			continue // LETPASSTHROW is used for anything you can click through (or the firedoor special case, see above)
  
  		if( O.flags&ON_BORDER) // windows are on border, check them first
  