allow client parameter override on construct and include file adapter

- Add the ability to override client options on constructor.

You can now override and append options of a client on construct.

- Add a file cache adapter.

Adapter uses a buffer and flushes to file one per execution.

- Tweak a failing test.