finished code and readme