major vim reorganization