move the value from InnerVar to a boxed type in VarControlBlock

make a function that locks multiple vars

make a pool allocator that speeds up the creation and destruction of vars

tests

macros

more test

documentation



further:

make a library that provides STM wrappers over channels and IO to make it more useful

debugging utilities