added speculative new API, but it requires DST's to be fully implemented, since one needs to cast Arc<Box<Trait
some updates and renamings
changes
Merge branch 'builder'