Style tidyup;

- Prefer single-quoted strings when you don't need string interpolation or special symbols.
- Remove redundant return.
- Use proc instead of Proc.new.
- Remove unused block arguments.
- Use array literal instead of Array.new.
- Use fail instead of raise.
Turns out I didn't need Buffer back again.
Better way to write this method.
Remove redundant selfs and #adaptor= method.
Fix randomly failing tests relating to Queue.
Whitespace.
Write this construct better.
Unused variable should be indicated.
Minor tidy.
Alias .reset to .clear to match repository methods.
Whitespace changes.
Implement simplistic double buffering.

Add @current instance variable which contains the current interface.
Add DefaultReporter so I can check for slow tests.
Merge pull request #22 from gavinlaking/twerks

Various tweaks including double buffering.