all: more doc
proc: return err instead of nil (for consistency)