model: refactor by moving Futures to their own module

should be invisible to user
gui acqmng: modify to use Futures as main object for manipulating acquisitions

supports both Streams which gives directly a Future (but do not exist yet),
and Streams which have .image and .is_active (via a wrapper).
gui acqmng: add more tests

also update stream test to be more clever with running backends