Cleanup Warnings

This takes care of the slew of `unused_must_use` warnings! This closes #44.

* In `branchify.rs` the write calls are chained together and unwrapped before the macro returns.
* In `scancode.rs` and `keycode.rs` the `try!` macro is used to return an `Err(IoError)` if one is enocuntered, otherwise it returns `Ok(())`
* In `main.rs` we match on the result that bubbled up from the generators.

In all cases these write errors are considered fatal. (I figure if the code generator cannot generate code, there's not much point in trying to continue.)

I simply suppressed the warning about visible private types, as I feel they were appropriately used in this case. (Making sure the developers can't just pass in some arbitrary `ParseBranch`.)

All that really remains is the warnings about deprecated owned vectors.