Bugfix: drawing picture in a gd larger than itself

Drawing into a graphics device larger than the picture itself would
crash the server. This was caused by the loop which gets pixel from
picture. It only stopped on boundary of gd.
Bugfix: wrong padding in drawing bitmaps

Lines in bitmaps are always aligned to 32 bits, which means the
beginning offset of lines in bits must be evenly divisible by 32. That's
why the pixel data in some bitmap files are longer than
width*height*color_depth.

Bugfix: aligned data fetching in 24-bit bitmap

We can't just take a 32-bit int from char pointer, there are alignment
problems.
remove font matrix from source code

Font matrix will be lazy-read on the first call to engine_show_text.
Also solve the problem where server can't be run from another folder.
add comments for fill_polygon
creat a welcome interface,close it when the first application comes.
Merge branch 'master' of https://github.com/FangYuanClaire/egui