Modifications to allow for multiple `filtered_input_t` types to be used.

 - `initialise_input` now requires a pointer to a `filtered_input_t`
   - A callback is no longer registered by the initialiser: applications
     have access to the `input_mcpl_rx(filtered_input_buffer_t*, uint
key, uint payload)` function, but must implement and register their own
     handler.
 - `input_buffer_step` requires a pointer to the `filtered_input_t` to
   step
 - `filter`, `sdp-tx` and `ensemble` updated to account for these
   changes.
Rename files, refactor filtered_input into input_filter.

All '-' become '_' in filenames.
`filtered_input` has become `input_filter` and all functions are
prepended with this.
Add input filter banks.

Allow multiple instances of input_filters in an application.

TODO: Apply this to filters, sdp_tx and ensemble.
For ensemble this is useful for global inhibition, for filters and
sdp_tx it allows more than one Node/Ensemble to feed to component.
Make it easier to avoid compressing decoders.
Bugfix for Ensembles with no output.

(cherry picked from commit 35ed448bc73cc83e085e04bce7409b2dfd4b5475)
Bugfix for Ethernet output resizing.

(cherry picked from commit e42e89002dc513843267a369fd353d5cd39dcd1c)
Merge pull request #84 from ctn-waterloo/fixes

Minor fixes
Merge branch 'master' into opt-compress

Conflicts:
	nengo_spinnaker/utils/tests/test_decoders.py
Don't appstop if loading hasn't taken place.
Merge branch 'cleanup-on-fail' of github.com:ctn-waterloo/nengo_spinnaker into cleanup-on-fail

Conflicts:
	nengo_spinnaker/simulator.py
Merge pull request #82 from ctn-waterloo/cleanup-on-fail

Put simulation cleanup code in a try:finally block.
Merge pull request #85 from ctn-waterloo/opt-compress

Decoder compression improvements
Merge in from master.

Cherry picked from b9c1e7f034197

Conflicts:
	nengo_spinnaker/ensemble_vertex.py
	nengo_spinnaker/simulator.py
Merge branch 'master' into multi-inputs

Conflicts:
	nengo_spinnaker/builder.py
	nengo_spinnaker/edges.py
	nengo_spinnaker/ensemble_vertex.py
	nengo_spinnaker/simulator.py
	nengo_spinnaker/utils/probes.py
	nengo_spinnaker/value_sink_vertex.py
	setup.py
	spinnaker_components/Makefile
	spinnaker_components/value_sink/Makefile
	spinnaker_components/value_sink/value_sink.c
	spinnaker_components/value_sink/value_sink.h
Merge pull request #92 from ctn-waterloo/multi-inputs

Multiple Inputs for a Executable
Merge branch 'master' into neaten-simulator

Conflicts:
	nengo_spinnaker/simulator.py
Address merge comments.