Disposable lifecycle event moved in BeanPostProcessor documentation cleaner unit testing with dedicated context files for tested features