allow passing in opts without serialize and deserialize fns

Don't know if this is how you'd prefer to do this; I guess what would be ideal for my use-case is the ability to specify `opts` while having `serialize` and `deserialize` default.