Added AbstractSerializer (unfinished.)