Some performance and functional fixes

Created LazyLoaded class to represent a value that is loaded only when requested.
Created Tuple class to represent a pair of values.
Changed the static constructors of GrammarRules, PostalCode and NumberWriteInfo classes to load needed values only when requested.
Fixed LogTransaction class to publish its EventLogId and EntryType properties.
Fixed ForEach method from Enumerable class to not create additional unneeded array.
Renamed the file for SpeltNumber class to match its name.