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.
Formatting changes were in a separate commit so they can be excluded if you choose. I figured the formatting was a moot point since the JSON on the repo is older than fire anyway and thus I duplicated the base JSON for my changes on the current FML distribution. The whole file has changed more or less so the diff is pretty meaningless anyway, only the new structure is relevant.