Added bounds checking, and claim all valid directions