Changed MiniYaml.NodesDict property into a method.

Method is now called ToDictionary.
- Cached a few invocations into locals which should prevent some redundant evaluation.
- Added ToDictionary overloads that take projection functions for the keys and elements, since several callsites were doing a subsequent Linq.ToDictionary call to get this.
translatable tooltips
add automated language string extraction to utility
fix bogus label descriptors
Avoid redundantly setting viewport parameters in BeginFrame.

- Cache the old resolution, scroll and zoom in BeginFrame, and don't bother updating the viewport parameters again until they change.
- Pass around scroll as an int2 to reduce the number of back-and-forth casts.
Streamline PerfSample.

- Avoid memory allocations by making PerfSample a struct, and tracking ticks manually rather than creating a Stopwatch instance.
Use Marshal.Copy for faster array copying.

- Rewrite several methods to use Marshal.Copy to copy data faster and more succinctly compared to doing it manually.
- Rewrite Sheet.AsBitmap(TextureChannel, Palette) with a faster and more self descriptive loop.
Merge pull request #5602 from RoosterDragon/perfsample-streamline

Streamline PerfSample
Merge pull request #5601 from RoosterDragon/sheet-perf

Speed up some loops with Marshal.Copy
Merge pull request #5152 from Mailaender/auto-l10n

Automated translation string extraction
Merge pull request #5401 from RoosterDragon/nodesdict

Changed MiniYaml.NodesDict property into a method.
Merge pull request #5540 from RoosterDragon/begin-frame-cache-viewport

Avoid redundancy in BeginFrame.
Adjust travis config to update package lists before installing dependencies
Merge pull request #5621 from chrisforbes/travis-update-before-installing

Adjust travis config to update package lists before installing dependencies
Change terrain type from string based dictionaries to arrays
Merge pull request #5463 from pavlos256/perf-terrain-movement

Change terrain type from string based dictionaries to arrays
Clean up actor selection in WorldInteractionControllerWidget.
Stylecop BridgeLayer.
Use Map.IsInMap(CPos) for things that are checking CPos.
Bring PathSearch in line with the current code style.