bitmap.py: Rewrite for better clarity and to properly support img files

* Output file may now *optionally* be a .h or .img
* Added sanity check for when input == output
* Produces same output as previous bitmap.py
bitmap.py: Oops, bytes -> words is /2 not *2
bitmap.py: Header files are always 16bit aligned, but dataSize is either bytes or words depending on RLE
bitmap.py: Add sanity checks for word alignment
bitmap.py: Word-align 4-bt packed image data
Merge pull request #80 from jnwatts/new_bitmap.py

bitmap.py: Rewrite for better clarity and to properly support img files