Merge Johannes' changes into mine

I tried my best to merge Johannes' changes into what I have been working on.  The directory structure comes from running `cargo new 6502emu --bin`.  There is one unit test that can be compiled with `rustc --test -A dead_code 6502emu/src/main.rs`.
I think Rust had trouble with the MEMORY_SIZE constant because it won't evaluate the custom Add implementation at compile time. This sort of thing works:

```rust
// New
static ADDR_LO_BARE: Address = 0x0000;
static ADDR_HI_BARE: Address = 0xFFFF;

// As before, but not used for MEMORY_SIZE
pub static MEMORY_ADDRESS_BEGIN:    Address = Address(ADDR_LO_BARE);
pub static MEMORY_ADDRESS_END:      Address = Address(ADDR_HI_BARE);

// Also need to take care in terms of bit width and signedness
static MEMORY_SIZE: uint = (ADDR_HI_BARE - ADDR_LO_BARE) as uint + 1u;

pub struct Memory {
    bytes: [u8, ..MEMORY_SIZE]
}
```