Over the past few years we've steadily worked on our CRM and CMS software and have added new features and capabilities to it. However, while we were busy doing that the technologies that the software is built on was itself undergoing changes, some of which we made use of while others we chose to ignore. Fortunately those changes/enhancements usually maintain backwards compatibility with code that's already been written and so it rarely if ever breaks existing code.