Make `pip show` show much more metadata

New fields:
  - `Metadata-Version`
  - `Summary`
  - `Home-Page`
  - `Author`
  - `Author-email`
  - `License`
  - `Entry-points`

Sample output:

    $ pip show pytest
    ---
    Metadata-Version: 1.1
    Name: pytest
    Version: 2.6.4
    Summary: pytest: simple powerful testing with Python
    Home-page: http://pytest.org
    Author: Holger Krekel, Benjamin Peterson, Ronny Pfannschmidt, Floris Bruynooghe and others
    Author-email: holger at merlinux.eu
    License: MIT license
    Location: /Users/marca/python/virtualenvs/tmp-4e2169280f5cbd16/lib/python3.4/site-packages
    Requires: py
    Entry points:
      [console_scripts]
      py.test = pytest:main
      py.test-3.4 = pytest:main
It's a micro-optimization, but the `logging` module can do the string formatting for you: 

```
- logger.info("Metadata-Version: %s" % dist.get('metadata-version'))
+ logger.info("Metadata-Version: %s", dist.get('metadata-version'))
```

In this case, the string will not be formatted if the log level of the message is lower than the level of the logger/handler.