Add tests for the bit_struct! macro.

The macro crate, when built with `--test`, now depends on itself (a version of itself built without `--test`). This is a bit unusal, but allows testing a syntax extension. I did not feel like making a new crate just for this, and these tests do not belong in any of the other existing crates.