Refactored virtual board setup
Refactored virtual board setup

Created setupVirtualBoard to make the code intent clearer.
at same time, stopped differentiating between the normal starting position and any other. The normal starting position is just a special case of starting positions, so let same code handle both.

Paladin/Marshall