Add Lazy types to rainbow

This creates a new Lazy submodule that replicates the strict functions with a lazy version of it.