added .NET client and sample console app
add timing information to sample output
add output caching
add nuget
refactor to use new naming convention