packed pipeline

this patch add resolve most of the functionality we wanted to do in #6