Brought up to date with new nengo.
Added C++ Filter operator.

Counterpart of the python SimFilterSynapse operator. Untested.
Setting up debugging better in Makefile.

Now two levels of debug, debug and run_debug. run_debug subsumes debug,
and prints extra, simulation time data that is not printed when only
debug is active.

Also added standard -g flag for the compiler when in debug mode.
Filter improvements.
Improved handling of PyFunc operators.

Can now handle functions that always return None (still calls the
function, but no longer looks for a signal to set).

Also fails properly if the function outputs something valid on the first
evaluation but None later on.

PyFunc genrally handled more robustly.

Also, finding the C++ key for an object is now done by a function
make_key so that it can easily be changed. Fixed a bug related to this,
where it should get the key by looking it that base signal, and it
wasn't always doing that.
Small fixes.

Made Simulator.__init__ args more closely correspond to real Nengo's args.

Bunch of other minor fixes to get tests to pass.
Don't run tests with an arg named RefSimulator

nengo_mpi doesn't have to pass those, a lot of them are about the
specific state of signals at various times through a simulation. Might
by cool to, in the future, give signals a property such that they
automatically query the C++ side for their current value whenever they
are referenced, probably using descriptors. Then we could make those
tests pass. But don't need to do that now.