Change options to setup.py in Makefile for default 'make'

Changes largely to address #185.

Specifically, 'make'/'make all' now runs 'python setup.py build_ext -i', which prepares for development in place. 'nosetests' and 'make test' both work, and no longer require recompile or additional commands.

In exchange, 'make install' now recompiles everything even after a 'make', so people who do 'make && make install' out of habit will have twice the build time.  But as in #185 discussion I would argue that the lack of confusion/erroneous foo is worth it.

I don't see any other downsides, but I'm open to finding out what they are :)

@mr-c, I think this is ready for review, assuming I haven't fubarred Jenkins.