Faster replay browser loading

Partial fix to address the core issue (slow replay browser loading) behind the suggestion given in #5942.

This parallelizes the loading process and removes a few bottlenecks. An informal test with 1200 replays sees the "Load Replays" time reduced from 3527 ms to 1210 ms on my dual core machine. Machines with more cores might see even bigger improvements but eventually IO will take over as the bottleneck so things will plateau somewhere.

This doesn't actually implement any lazy or background loading as suggested in #5942. That would probably be worthwhile, particularly for when the replay files are not in the file cache and waiting on IO becomes the main issue.
That's why I introduced the length-prefixed, encoding aware, ReadString extension method.