Break after a container when we're emitting a container.

Things like this:

    aaaaaa = (
        bbbbbbbb(cccccccc, dddddddddd), eeeeeeee(fffffff, ggggggg)
    )

tend to look much gooder like this:

    aaaaaa = (
        bbbbbbbb(cccccccc, dddddddddd),
        eeeeeeee(fffffff, ggggggg)
    )
Add "--range" to acid test
Add missing docstring
Don't penalize empty containers which aren't on separate lines.

Things like this don't look very good:

    foo.bar.baz.qux(
    )
Really honor the 'no breaking after opening bracket' flag.

We weren't really honoring this flag before. This results in some nicer
code formatting.
Don't add a line break right before the opening parenthesis of a function call.
Simplify summation.

This doesn't create a joined string just to discard it soon afterwards.
Don't separate a long dotted object too soon.

It could end in the dotted object being split into multiple lines like
this:

  aaaaaaaaaaa.
  bbbbbbbbbb.
  ccccccccccc.
  eeeeeeeeeeeeee.ffffffffff.ggggggggggggg.hhhhhhhhhhhhhhh
Modify to match pep8

See jcrocholl/pep8@f01edd687c32d457a7961e048f7068c96b20d8ea.
Remove unused parameter
Format
Give up if we can't properly parse the container.
Merge branch 'master' of https://github.com/hhatto/autopep8
Update indentation fixer to match pep8
Suppress false positives
Format