Add a client and fix handling of short input paths.
Add at least basic tests for client functionality (now coverage back at 100%)