allow constraints 0.4
add Identity functor
add Monoidal categories