clean-constructs typescript implementation of clean architecture programming constructs for node.js projects