Add batch actions and waiters to resource model.

This adds definitions to the internal resource model to handle batch actions
and waiters, both of which are recent additions to the resource JSON format.
This change is a prerequisite to adding support for these features in the
resource class factory. Tests are added for the new model features.

cc @jamesls, @kyleknap
I am not sure if I like the name ``ItemWithParameters`` seems a little vague to me. How about ``DefinitionWithParameters`` or ``DefinitionWithParams``?