Warrior: Minor fixes to berserker_swap for some protections, most notably so it doesn't go into an infinite loop when user selects weird values.

git-svn-id: http://simulationcraft.googlecode.com/svn/trunk@17468 3b4652a1-8050-0410-ac47-3d40261b0f8b