cleanup init and add comments