reducing some confusion in lib/assemble when creating a new instance of assemble