Fix several name collisions.

This is a workaround to fix a couple of existing issues and hopefully
mitigate future problems with the resource JSON descriptions. It is
only a partial fix and does not update docs, but currently only
two issues exist:

1. `ec2.RouteTable.associations` is defined both as an attribute via its
   shape and via a `hasMany` collection. The collection is renamed to
   `associations_collection`.
2. `ec2.VpcPeeringConnection.vpc` is defined both as an attribute via its
   shape and via a `hasOne` reference. The reference is renamed to
   `vpc_reference`.

Tests have been updated to take this renaming into account, and
a warning is logged each time we rename something, so we can use that
in the future for auditing the resource JSON files.

The issues above were found by a new test, which just instantiates each
resource to ensure it's possible. Apparently Botocore does not support
Glacier yet, so I skip that one.

cc @jamesls, @kyleknap