Changed EngineObject interface to use a common in/out buffer.

This clarifies code in the implemeting objects. It was a cause of bug,
fixes now in EngineVinylSoundEmu and EngineFilterBlock.

Please see my in-line comments.