Make @arrow a morphism dispatcher and morphism a simple morphism
Can disable domain and codomain check
Make domain and codomain checking False by default
When calling stack first item domain and last item codomain are checked
When slicing a stack it returns Stack type instead of tuple