Add support for readonly collections
Merge pull request #44 from Haacked/haacked/readonly-collection-support

Add support for .NET 4.5 readonly collections
bumped version to v0.32.0
documented IReadOnlyCollection<T> and IReadOnlyList<T>
Add happy path escape for string that don't need escaping

Benchmark with and without happy path
100000 iterations, with warmup

Baseline release

Without magic characters: 0,4782s 0,0048ms
With magic characters:    0,5438s 0,0054ms

With happy path release

Without magic characters: 0,2174s 0,0022ms
With magic characters:    0,5535s 0,0055ms
Add an escape char lookup table and buffer safe characters

Benchmark with and without loop optimization
100000 iterations, with warmup

Baseline

Without magic characters: 0,2178s 0,0022ms
With magic characters:    0,5570s 0,0056ms

With escape table and buffering

Without magic characters: 0,2257s 0,0023ms
With magic characters:    0,4180s 0,0042ms
Always be measuring

This was actually slowing us down.

Baseline

Without magic characters: 0,2175s 0,0022ms
With magic characters:    0,4067s 0,0041ms

After

Without magic characters: 0,2151s 0,0022ms
With magic characters:    0,3738s 0,0037ms
Drop the continue, make it a branch
Trim the fat
Explicit access modifiers
Group the escape related fields before ctor
Consistent naming convention
Merge pull request #45 from niik/optimize-string-serialization

Micro-optimize string serialization
bumped version to v0.34.0