feature(webapp): Add support for a basic WebApp Manifest file

Fixes #7493


TODO:
 - [x] Choose a component. i.e. `feature(???)`
 - [x] Actually register the `init()` callback with Elgg
 - [x] Remove the `@flow` annotation
I could have. Haven't thought about the pros or cons very deeply. Doing it this way allows a type hint, which wouldn't be possible otherwise. But I don't know how much that matters either. Do you avoid injecting entities just because they're so heavy, or because you prefer to inject the primitive values instead of the object in general?