Merge pull request #10 from MaxKellermann/linux

Reduce LKSurface::SelectObject() overhead
fix several "maybe unitialised" warning. (false positive)
replace TCHAR by char for profile file token, : avoid char to wchar convertion.
fix MainWindow SetFocus when App is Activate & other small improuvement.
- _hWnd is not set before OnCreate call.
- Add Sublass Window for Allow to create stock WNDCLASS
LKWindowSurface : fix false positive assert
Message : Use HWND wrapper class
Message : rewrite system, simpler, fast and less memory foot print.
Remove lot of unused code.
LKObjects: convert stock LKBrush copies to macros
Progress: take LKBrush reference instead of copying it
Screen/LKSurface: add SelectObject(HFONT/HBRUSH/HPEN) overloads

Replaces all old SelectObject() overloads.  The new ones are inlined
and have thus zero overhead over raw GDI function calls.
Screen/{Pen,Brush}Reference: new class replacing LK{Pen,Brush} in some cases

Used to avoid instances with _Destroy=false, only referring to the
"real" object.

As a side effect, this patch removes a lot of bloat (binary size
reduced by 10 kB).
Screen/LK{Brush,Pen}: disallow copies

Prepare for eliminating the _Destroy flag.
Screen/LK{Brush,Pen}: eliminate the _Destroy flag

All instances are now "master", and there are no references.
Screen/LK{Brush,Pen}: inline the default constructor

Reduce bloat.