add vi mode
minor updates