refactored tests, fixed safe_move to check for safety even more