cli::NumericOption class template can take any numeric type as argument
add Memory{Source,Sink} and replace rawstrbuf with MemoryBuf