promises.cf: simplify and abstract bundle common inventory

- Increase readability.
- Use classes promises to keep bundle DRY.
- Factor out inputs and bundles variables common to any system's inventory.
- Linux-based systems: cascade down the class chain,
  redefining inputs and bundles variables, from a least to most specific defintion.

Probably best viewed with a patience diff.