Version Inheritance Support

Launcher from version 1.5.1 now supports version inheritance which has three main benefits:

* User now **does not need to download vanilla version prior to installing** because the launcher handles inheritance of unavailable vanilla versions just fine and will happily download the jar and JSON on first run
* No longer necessary to keep installer's bundled JSON up-to-date with Mojang libs from vanilla, bundled JSON now only needs to contain libs to be *added* to the classpath
* Mojang libs (authlib, realms) will always stay in sync in the future if vanilla version is updated

Prior to the resolution of [MCL-2964](https://bugs.mojang.com/browse/MCL-2964) there was an issue with inherited versions, this is now resolved and so adopting inheritance seems like a good plan.

This pull request comes with a free frogurt.
Lex, no one is using this installer for installing legacy forge versions. In fact, it won't be used at all until the coming fml merge, because we'll need to bump the version for this. It will never see use to install old stuffs.