Assorted performance improvements

Drop Adamantium. It's nice to have a guarantee of deep immutability, but
the cost of the extra allocations it brings is too high.

Try to prevent as much type coercion from happening if inputs are
already well formed.