changes to library structure