Add Flags trait for all flag types

This trait makes it easier to specify none or all flags.
Rename flag to flags for stdlib consistency
Add rustdoc comments for flags module
Merge pull request #86 from jcmoyer/flags-trait

Flags trait
Remove unnecessary 'mod flags' declarations
Merge pull request #87 from jcmoyer/flags-mod

Remove unnecessary 'mod flags' declarations
Replace ~"string" with "string.to_owned()", except in fail!, where it was changed to "string"
Switched from boxed structures to unboxed everywhere
Update for language changes
Allow a custom path to rustc to be specified
Allow a null audio device to be specified
Provide string conversions for various enums

This lets WindowEventId, KeyCode, and ScanCode use the derived Show trait.
The extra data provided for KeyCode and ScanCode is trivial to obtain,
given that ToPrimitive is implemented for both, while WindowEventId has no
specific data, thus any custom implementation is unwarranted.

Event cannot use the derived Show trait without many of the sub types
providing an implementation as well. Provided is now a simple relation of
Event type to its identifier as a string.
Merge pull request #88 from gmorenz/master

Replace ~"string" with "string.to_owned()", except in fail!, where it wa...
Merge pull request #92 from dpx-infinity/master

Switched from boxed structures to unboxed everywhere
Merge branch 'rustup' of github.com:pcwalton/rust-sdl2 into pcwalton-rustup

Conflicts:
	src/codegen/main.rs
	src/sdl2/audio.rs
Merge branch 'pcwalton-rustup'
Merge pull request #95 from Wolvereness/pull-95

Provide string conversions for various enums
remove usage of owned ptr in audio.rs
add Option wrapper to AudioSpec field, fix #97
Merge pull request #98 from andelf/fix-audio-owned-ptr

remove usage of owned ptr in audio.rs