[vim keymap] Catch up on unit tests

Added unit tests for:
- Visual mode
- Marks
- Basic Ex mode
- `:map`
- `:substitute`

Fixed a couple of things in `vim.js` brought up by the unit tests and did a small cleanup in the `vim_test.js`.