More work reimplementing Serial