The `user.options` used to contain the default user options as well, but this was split off into a regular module called `user.defaults` (stateless, cacheable) in 2015 (<https://gerrit.wikimedia.org/r/177501>).
What's left is a fairly small blob of JSON that is user-specific, private, and embedded into the HTML head. Which is exactly what `user.tokens` is as well.
Let's merge these.
#### Original plan
* Define new module `user.private` that does what both of these do. Leaving `user.options` and `user.tokens` as empty modules ~~(properly empty with isKnownEmpty returning true and no dependencies, not even an alias to the new module). The benefit of it being properly empty is that it will get a preset state=ready declaration and thus never roundtrip. We don't need this to have a back-compat alias because the module is always loaded so we can fulfil it without looking at `user.private` and anything using it will still observe tokens and options as having been loaded.~~ Per T235457#5817934, they will be empty modules with back-compat alias.
* Update any uses in core, tarballed/WMF-extensions.
* Ask Krenair or Krinkle to run [tourbot](https://github.com/Krinkle/mw-tool-tourbot) to the majority of uses. There should be little to none because it is loaded by default and can't be lazy-loaded even if it weren't due to being private/embed-only.
* Remove the addModules() call and the empty modules.
#### Actual plan
* [x] Merge `user.tokens` into `user.options` (Yes, we found a way. Yes, it's hacky but it's worth it as it'll be least disruptive to end-users and developers this way).
* [x] Update uses of `user.tokens` to `user.options` in core.
* [ ] Update uses of `user.tokens` to `user.options` in WMF extensions.
* [ ] Update uses of `user.tokens` to `user.options` on WMF wikis (not until after the next branch has gone to all wikis).
* [ ] Deprecate `user.tokens` in MW 1.35.
* [ ] Remove `user.tokens` in MW 1.36.