Using method_missing on Sink interface instead of delegating
every method via forwardable
Fixed broken test. Checking its a regular object versus calling
invdividual methods of the class's API which makes the test
slightly more brittle