move functions into toplevel crate and move lock into usercode
use uint::range instead of hardcoded vector in test
allow use of memory in warnings
add docs makefile and ignore