Make all structs in sodiumoxide implement Clone
Refactored Drop and Clone implementations to use macros