Move argument objects out to separate file

As the abstractions grow, I think it makes sense to move the
arguments object portion of the domain model out into its own
module.
Move __init__ of base arg class into concrete classes

This cleans up the interface between the base arg class
vs. the concrete implementations.  Also renamed the
BuiltInArgument with the DictBasedArgument, as BuiltInArgument
can be used in extensions so the name is misleading.
Raise NotImplementedError in arg base class
Require explicit args to DictBasedArgument

This restricts the set of allowed args that can be passed
to DictBasedArgument.  This makes it easier to read because
rather than taking a dictionary we specify *exactly* what
arguments we accept.

Also removed metavar from the model.  This is only used for
display purposes which bcdoc does not look at.
An __init__ to base cli arg that accepts a name
Give default implementations to CustomArgument
Switch to py_name for argparse destinations
Remove customization's CustomArgument

No longer needed, use arguments.CustomArgument.
Update bundle instance to latest argument
Add test for warning block rendering

To verify that text writers on windows properly
render warning blocks.
add new samples
examples for opsworks, redshift, s3
Move examples into awscli/examples

No longer needs to be in doc/source/examples
Move ec2 examples over to awscli/examples
Move IAM examples over to awscli/examples
Move sns/sqs examples over to awscli/examples
Move s3 examples over to awscli/examples
Grab examples from the awscli/examples

Use package_data the same way we're using it for
the .json files.

Also examples/*/* is how we specify the files.
This will need to change if we have directory
structures that nest more deeply than this.
Merge branch 'carljparker-develop' into develop

* carljparker-develop:
  Grab examples from the awscli/examples
  Move s3 examples over to awscli/examples
  Move sns/sqs examples over to awscli/examples
  Move IAM examples over to awscli/examples
  Move ec2 examples over to awscli/examples
  Move examples into awscli/examples
  examples for opsworks, redshift, s3
  add new samples
Merge branch 'argument-refactor' into develop

* argument-refactor:
  Update bundle instance to latest argument
  Remove customization's CustomArgument
  Switch to py_name for argparse destinations
  Give default implementations to CustomArgument
  An __init__ to base cli arg that accepts a name
  Require explicit args to DictBasedArgument
  Raise NotImplementedError in arg base class
  Move __init__ of base arg class into concrete classes
  Move argument objects out to separate file