feat(lib): add `#[deriving(Copy)]`