Check chrome.runtime.lastError to fix error in chrome.runtime.lastError
Add noRepeat to relevent frontend commands

The use of Vomnibar commands with a numerical prefix > 1 is broken and
non-trivial to fix. This patch introduces the `noRepeat` property for
frontend commands, applying it to all Vomnibar commands and several
others.
Prompt for confirmation when executing large numbers of repeats

Implement `repeatLimit`, to prompt for confirmation before repeating a
command a large number of times, and apply it to tab creation/deletion
commands.
Add sessions permission to manifest.json

Fixes tab restoration
Fail gracefully in restoreTab when runtime.lastError is set

This brings behaviour of the chrome.sessions codepath in line with the
legacy code.
Fence off unnecessary tabQueue code when chrome.sessions is defined
Change registerFrameIfSizeAvailable to registerFrame, stop sending size

We were never using the area property, and it was causing an infinite
setTimeout loop on frames with height == 0 or width == 0 (often caused
by AdBlockPlus etc.).
Merge branch 'mrmr1993-stop-frame-register-infinite-loop'
Merge branch 'fix-insertCSS-error' of github.com:mrmr1993/vimium into mrmr1993-fix-insertCSS-error
Refactor CSS injection.
Merge branch 'mrmr1993-fix-insertCSS-error'
Fix detection of embedded objects.
Merge branch 'fix-tab-restore' of github.com:mrmr1993/vimium into mrmr1993-fix-tab-restore
Merge branch 'mrmr1993-fix-tab-restore'
Allow blur of embedded objects (e.g. flash).
Merge branch 'limitedRepeats' of github.com:mrmr1993/vimium into mrmr1993-limitedRepeats
Add LinkHints.activateModeToDownloadLink to command list
Limit repeats, minor refactoring.
Merge branch 'flash-blur' of github.com:smblott-github/vimium into smblott-github-flash-blur
Merge branch 'smblott-github-flash-blur'