fix incorrect file name
fix input/output streams to be only async, will add a blocking varient in future, removed some friend declarations, fixed some typos in unittest