basic library set up