Add support for recursively compiling models