Fixed bmpLoad():

 * added gtests
 * fixed various memory leaks
 * fixed wrong display of images with width < 8
 * fixed wrong display of images with odd width and/or height

This might be a contributing factor to the issues #1838  #1834 and possible others. Example gtests output before this fix (reverted bmp.cpp file):

![lcd_bmploadanddisplay_212x64_old](https://cloud.githubusercontent.com/assets/5950438/5016269/2f692d44-6aa5-11e4-852a-7b69d91bb64b.png)

and correct one (after this fix):
![lcd_bmploadanddisplay_212x64](https://cloud.githubusercontent.com/assets/5950438/5016288/4fa60aaa-6aa5-11e4-89d0-6e546f304e9d.png)