Foundational module types for devices.

This package is primarily useful in the context of a Mirage project.
