Make running PYTHONSTARTUP optional

It makes sense either to have PYTHONSTARTUP set up things for all
interactive Python sessions, or to bring some convenience features to
the default Python shell. We used to ignore it, but IPython 1.x executes
the PYTHONSTARTUP file. In conversation with @minrk, we felt there
should be a config option not to run it, but running it should remain
the default.
Avoid recursion from $PYTHONSTARTUP

Setting IPython as the default Python environment should just work (tm).
Merge pull request #4606 from takluyver/optional-pythonstartup

Make running PYTHONSTARTUP optional