Move modes into separate package; start using commands

Insert mode is fully converted, Normal mode has only basic movement covered.

The only exception right now is Command mode, which uses a lot of
internal editor machinery.
Express repetitions as a type of command object
Convert the entire normal mode to command objects
Convert NewLine(Above,Below) to command object
Merge pull request #17 from dtcaciuc/master

Create mode package, convert modes to use command objects