style(injection): rename makeAjaxRequest() to handleOldAjax()

In meta/*/helpers.litcoffee rename makeAjaxRequest() to
handleOldAjax() to make it clear what it does and to distinguish
from the upcoming new ajax interface.
refactor(chromium background ajax): replace interface with new one

- remove meta tests as they were dumb
- remove chromium/helpers.litcoffee
- add SuperAgent to Bower background dependencies
- copy SuperAgent to chromium/helpers.js during build process
- use SuperAgent to handle ajax requests
refactor(vk_lib): AjGet, AjPost, AjCrossAttachJS - adapters for app.ajax

Use app.ajax in these functions.
fix(chromium background ajax): multiple fixes (I'm sorry)

- "request" > "superagent" (that's what SuperAgent exports)
- "inject.licoffee" > "inject.template.litcoffee", since we use
"<%= name %>"
- manually copy safe properties from response to data as there
other ones that can't be stringified
refactor(vk_ext_api): use app.ajax

- remove vk_ext_api.get(), .head() and .post() as there's only one
use case for each one. Use app.ajax directly in those cases.
- remove vk_ext_api.req() and throw an error when it is called.
This is done to see where it is used
fix(ajax): return response.text instead of response.body

Currently all the code expects raw response text here.
style(chromium background ajax): fix newlines in inject.litcoffee
refactor(firefox background ajax): replace interface with new one

- remove firefox/chrome/content/helpers.litcoffee
- copy SuperAgent to firefox/.../helpers.js during build process
- use SuperAgent to handle ajax requests
refactor(maxthon background ajax): replace interface with new one

- remove maxthon/helpers.litcoffee
- copy SuperAgent to maxthon/helpers.js during build process
- use SuperAgent to handle ajax requests
refactor(opera background ajax): replace interface with new one

- remove opera/helpers.litcoffee
- copy SuperAgent to opera/helpers.js during build process
- use SuperAgent to handle ajax requests
feat(ajax): allow to specify custom request headers

Provide "headers" option in app.ajax.* methods.
feat(injection): allow vk_lib.js to run in frames

- move all old source/*.js files to source/run-in-top/
- copy source/run-in-top/vk_lib.js to source/run-in-frames/
- inject new *.litcoffee files and run-in-top/* to top windows only
- inject new *.litcoffee files and run-in-frames/* to frames only
- run source/*.* and source/run-in-top/*.* before tests

This doesn't fix VKDAPI app authorization (see #59) but is related
to it.
fix(chromium injection): allow to run on *.vk.com
style(source): rename source/run-in-frames/23_vk_lib.js to vk_lib.js
refactor(vk_lib): don't run in frames

Remove don't run vk_lib.js in frames as it does exactly nothing there.
It doesn't help with the new upcoming app.vkApi module, and the old
one doesn't work.
fix(firefox injection): inject at start, not DOMContentLoaded

Use some Mozilla-fu here. All the magic was taken from the original
VkOpt code (see "ex_loader.moz_ldr" defined in background.js
in old code).
refactor(firefox meta): don't specify maximum Firefox version

Use "*" as maxVersion, meaning our addon is compatible with all
future versions of Firefox.

From https://developer.mozilla.org/en-US/Add-ons/Install_Manifests:

Usually, there is no need to restrict the compatibility: not all new releases
will break your extension and, if it is hosted on AMO, you'll get notice
several weeks in advance if a potential risk has been detected. Moreover,
an extension being disabled, even for a short period, leads to a bad
experience for the user.
feat(vkApi): add app.vkApi module

Add app.vkApi module with public method app.vkApi.getAccessToken()

See test/vk-api.test.litcoffee for more info.

This closes #42, closes #59, related to #68.
fix(opera meta): allow to run on https://oauth.vk.com/*
refactor(dApi): use console.error instead of topError

This faces #77.