External Console: Improve message when a console fails to start

- Try to improve the situation described in revision 4f523daf4159 (for which
revision db767a7de651 was not a full solution).
IPython Console: Don't disable its actions if its hidden

- Otherwise now it's not possible to open a client from the Interpreters menu
(verified on Mac).
IPython Console: Increase the range of possible sizes for inline figures

- The previous minimal values were too high under certain circumstances
Move IPython config constants out of baseconfig.py to a new file called ipythonconfig.py

- With the introduction of TEST and DEV variables in baseconfig, now this module
is called in userconfig when CONF is created, which in turn required to check
for IPython presence.
- Since this could slow further down Spyder startup (given that CONF is called
in start_app.py), I decided to move the mentioned constants to its own file.
Merge from 2.2 (Various IPython improvements)
IPython Console: Report failure to run the python process that starts the kernel in the client tab
External Console: Remove unneeded import
Update hgtags with all tags from the 2.2 branch since v2.2.0

- This is necessary to make Mercurial (and Tortoisehg) show the 2.2 tags when
working on this branch.
- We are following the advice of this post: http://stackoverflow.com/q/12799801
(which seems to work correctly).
scientific_startup: Protect it against any possible ImportError

Update Issue 1322
Status: Fixed

- Now (I hope) scientific_startup will never throw an error again.
Merge from 2.2 (Fix Issue 1322)
IPython Console: Fix a crash at startup when Sphinx is not installed
External Console: Remove code for auto-switching PYTHONSTARTUP option when changing interpreter

Update Issue 1365

- This code is not needed anymore since revision 955a0c140a7c.
- It had two main drawbacks:
1. It was freezing Preferences while changing interpreter.
2. It also made way too slow to open Preferences on Windows with a different
interpreter from the default one.
Merge from 2.2 (Remove code for auto-switching PYTHONSTARTUP when changing interpreter)
External Console: Turn on Variable Explorer's autorefresh (if turned off by the user) while starting an IPython kernel

Update Issue 1595
Status: Fixed

- Autorefresh needs to be on so that the monitor can find __ipythonkernel__ in
the globals namespace, which is need to start a client.
- Then we turned it off in IPython console to avoid Issue 1450.
Variable Explorer: Don't turn autorefresh on for IPython kernels through Preferences

- Else users will experience the nasty Issue 1450
Merge from 2.2 (Fix for Issue 1595)

- Besides, don't turn autorefresh on for IPython kernels through Preferences
scientific_startup: Make its temp vars private so that they are not listed in our Variable Explorer

- Although they are deleted after scientific_startup is ran, they were shown
briefly on the VE while the console is starting.
Merge from 2.2 (Make scientific_startup temp vars private to not show them on the Variable Explorer)
Mac app: Update create_app.py to make it work with Homebrew

- Before I was using my own compiled version of Python and PyQt but
that makes things impossible to upgrade without a full rebuild from
scratch.
- Homebrew makes this a lot more easier, and it also let us pack
libpng, which makes the app totally self-contained.
- Another advantage is that Homebrew has special formulas to compile
numpy and scipy which ensure they pass all their tests.
Merge from 2.2 (Update create_app.py to use Homebrew)