Setup script

@chriddyp, @etpinard, what do you think about throwing warnings here like this?

basically, if you (1) don't have a core package installed (2) if the core package is older than ours and (3) if you have an outdated optional package (think matplotlib)