I like this, looks much cleaner, but...  If i'm in a reducer and I call sumOption on the input stream, which is huge, i'll never convert to the space efficient type here I believe until I exhaust the input base type? -- could OOM in the case of Set => HLL ?