refactor out pull-defer and pull-peek
more tests
test defaults
back up default choices with an rfc
comment on thing I am not sure about
1.0.0