Would you foresee someone providing a buffer size larger than 65536? If not, I would advocate making it a [UInt16] and setting its default value to [UInt16]::MaxValue. That way, you wouldn't be able to set a negative buffer size. Or you could leave it as [Int] and use ValidateRange. Thoughts?