Refactor Update() method moving common logic in a new method named Move(). DRY implementation. Removing unnecessary validation constants. Rename direction to inputCommand; Refactor PrintTopResults() and rename it to GetTopResults().
Merge pull request #23 from Enlightment/master

Refactot Update() and PrintTopResults()
Upload original code for refactoring in a new directory
Merge pull request #24 from Enlightment/master

Upload original code for refactoring in a new directory
Merge remote-tracking branch 'upstream/master'