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
Same applies to the pagehandler...