Move recoverable compile into Compiler