adds new iobackends models
upgrade required Mocha.
reorder import of models so tests don't break(see)

For some tests we do a require of mosto.js, that in turn ends up
calling iobackend.patchBackbone().

This wouldn't be a problem if it happens at the beginning but within the
test suite models were created before and after that and it is not a
very good thing (for instance, Backbone-relational crashes with a
'RangeError: Maximum call stack size exceeded').

So, we patch backbone before all tests are run and also move the
require() statements inside the functions. That way they will be
evaluated only when they are run and not when the whole test suite
is built.
tests: load test backend from config if needed.
sync config from tests with common.
CaspaDriver: use models to send status over Redis
wait for status driver to initialize.
fix sending of length and current progress.
set the fields ProgressStatus defines in the model
MeltedCollection: relay events from driver.
melted-node-driver: relay events from mlt
melted-node-driver: send error message if getServerStatus() fails.
heartbeats: emit status messages.
mosto_server: send status messages.