spec for destination defines
fix spec
more spec fixes
implement destination define