Eliminated use of DecoratingStream abstract base class in favour of IStreamDecorator interface use, should help with possible disposed object access errors (not happening, but easily possible depending on user implementations).
Cleaned up main csproj file.
Started trying out using Code Contracts in place of bespoke parameter validation (very time consuming - hopefully using this will help!)
Eliminated use of DecoratingStream abstract base class in favour of IStreamDecorator interface use, should help with possible disposed object access errors (not happening, but easily possible depending on user implementations).
Cleaned up main csproj file.
Started using Code Contracts in place of bespoke parameter validation (very time consuming.. and, ironically, error-prone - hopefully using this will help!)
Test suite passing :-).