Refactor series (de)serialization tests

I've also removed some redundant tests and changed others that were
not actually testing what they should, so as a consequence we went
from 76.6% coverage to 77%.

I think there's still room for improvement in those tests, but the
diff was already quite big so I decided to stop here and save the
other changes for another branch