for bug #235, move functions of block and digest to struct.
for bug #235, use strategy to implements the schema0 and schema1.
for bug #235, refine schema0 and schema1, extract dup code.
for bug #235, refine code order of c1s1 and c2s2
remove the read and write with SrsStream.
for bug #235, use constructor and destructor for block and digest.