Improve robustness of setup.py in the absence of certain dependencies

Three changes to improve installation for users who may not already have all the dependencies installed:
  - a warning when NumPy is not already installed, because setuptools customizations don't play well with automatic dependency installation in NumPy's case (users are advised to install NumPy separately)
  - retrieve long description without importing webbpsf -- the webbpsf `__init__.py` imports from POPPY, which will not (necessarily) be available when setup.py is run. `imp` and `ast` are standard library modules used for this purpose
  - adding `numpy` to `install_requires` and `setup_requires`. (Currently, one of the AstroPy helpers tries to import NumPy, so it's necessary in `setup_requires` according to the documented meaning of that option. It's possible this won't be needed if the AstroPy helpers are changed not to have a hard dependency on NumPy at this point in the install.)