Use generics to make the readers/writers more dynamic