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.

This was prompted by someone following instructions in the docs to use PYTHONSTARTUP to start IPython, which resulted in infinite recursion as it ran PYTHONSTARTUP and tried to start itself again.