extract new task lib for building an underlying module