Using Filtered Cartesian Flattening and Microrebooting to Build Enterprise Applications with Self-adaptive Healing