many major improvements. added util library. corrected documentation