> Is it possible to backtrack using this framework? (I.e., execute code, stop it, go back a bit, continue, etc.)
In the develop branch we have a fully integrated debugger (using python-ptrace), so this should be doable.
> Is it possible to save/restore the machine state to a file?
Nop. If you want to do this, you should try to find a more VM-oriented framework (pyqemu maybe?)
> And can it deterministically (re)run multi-threaded code? And other (normally non-deterministic) OS functions?
Not yet, but if you instrument some functions using the debugger in the develop branch, you could do it.
edit: PANDAS is also a very good option (https://github.com/moyix/panda)