Prevent inheriting from wrong version of base Tech

New `API_VER` logic:

1. When only `API_VER` present:
    * Load `TechV1` or `TechV2` class basing on `API_VER` value.
2. When both `API_VER` and base tech present:
    * If `API_VER` is 2, base tech is specified by name, and it is not configured in level.js, try to load tech from `bem/lib/techs/v2`.
    * If `API_VER` and base tech's `API_VER` doesn't match, throw an error.
3. When only base tech present:
    * Allow inheriting from both V1 and V2 technologies.
4. If no `API_VER` nor base tech present:
    * Inherit from `TechV1`.

Closes #416