refactored code.  moved H V and D path checks into Piece