re-thought value API; minor fixes