parameterize availability zones; reformat templ maps

Added defaults to some of the settings to make it more likely that
someone will get a stack up and running on the first try: deployment
key and environment tag.

Parameterized the availability zones instead of hardcoding them to
us-east-1. Each region has it's own notion of what is primary and
what is secondary, etc. because it seems that not all capabilities
work in all AZ's.  Specifically I got this error when trying to
create a VPC in us-west-1.

> Value (us-west-1b) for parameter availabilityZone is invalid. Subnets
> can currently only be created in the following availability zones:
> us-west-1c, us-west-1a.

For us-east-1 "B" and "C" are still the primary and secondary so EdX
shouldn't be affected. But in us-west-1 primary=A and secondary=C.
We'll have to learn over time what works best for other regions.

Reformatted the mapping sections to make them easier to read.  Hope
you don't mind.  Much terser and easier to eyeball.

Terser overall description.  Removed the "you'll be billed!" warning.
fix copy/paste dup in memcached stanza
Merge pull request #16 from edx/feature/sef/reference-architecture

parameterize availability zones; reformat templ maps