Merge pull request #83 from jcmoyer/closure-borrow

Use &mut closure to satisfy the borrow checker
Implement macro for defining typesafe flags
Devectorize InitFlag
Devectorize WindowFlags
Devectorize RendererFlags
Devectorize SurfaceFlag
Support all bitwise operations on flags
Move u32 cast into flag_type! macro
Devectorize keyboard::Mod
Devectorize mouse::MouseState
Devectorize joystick::HatState
Support arbitrary flag widths
Use u8 for joystick::HatState
Merge pull request #3 from jcmoyer/bitwise-flags

use new style Bitwise flags