FEAT: Added SWAP action.

TESTS: Added unit tests for SWAP action.
FIX: Calculate new position incorrectly in func 'poke-char'.
Merge pull request #812 from qtxie/swap-action-1

FEAT: Added SWAP action.