Looking for a starting place to learn WebExtensions APIs

I’ve been writing extensions for years using the XUL/Javascript platform. I want to find out if I can rewrite any of them using WebExtension APIs. Can anyone recommend a good tutorial? Is there any one place where all the current APIs are fully documented? Any “Hello World” type examples?

Specifically, can anyone answer these questions?

  1. Can I read/write files to disk?
  2. Can I create an icon that can be placed on the main browser toolbar
    (i.e., the toolbar that hold the location box, back/forward
    buttons, etc.)?
  3. Can I save preferences (about:config)?
  4. Can I open a preference window (or any window the user can interact
    with, including popups)?
  5. Can HTML completely replace XUL (and use attributes like
    ’oncommand’, ‘onselect’, ‘onclick’, "flex’, etc.)?

I’ve tried to search for a WebExtensions 101 type page, but haven’t really found anything that is complete.

Adding @billm.