Added an event listener to call ClearLanguageServiceRootCachesAndCollectAndFinalizeAllTransients when a solution is closed

This should free up memory when closing a solution.