Add typespecs, change return value for clone_define

On unsupported platorms, clone_define/2 now always returns false.