Add new device and automation capabilities

Adds capabilities for new mjsonwp capabilities.  Capabilities are now an
object, created by passing the capabilities.  Properties on that object
are copied into the Capabilities object so the API is identical.

Also added deprecation warning generators, and a trailing log message
when a warning has been output.  If a desired capability is used,
logger.warn is sent a deprecation message.  Can also be used for
functions.

Added deprecation warning for older style caps

Busted unit tests into smaller tests

Ensure deprecation warnings aren't issued for new caps

Store the value of platformVersion as version.

Makes 'new' capabilities function like old ones, without needing upfront
conditionals.