Fixed CustomTimer

* No timer would be written to the log if it wasn't forced immediately (wrong (writePending) condition was changed to (!writePending))
* Added logging of the time per call since the last log item was written. Good for immediately written timers to look for single long measurements.
Configuration fixes

* For normal applications (not ASP.NET), the entry assembly is available regularly. But it was set too late for the configuration. So the log configuration was effectively ignored.
* If the configuration specified maxfilesize values > Int32.MaxValue, the overflow was ignored and the result was random. This is now properly bound to the Int32 range.
Default ASP.NET log directory moved into App_Data\log
File format spec: clarified record length meaning