Digital agencies invest a lot of time and money on building solutions for clients and when the next client comes along they may want a completely different CMS. This will cause a lot of code that was written for one CMS to be unusable for sites written in another, not to mention the code duplication that arises from this scenario.
There is also the ramp up time getting something in front of a client. When you provide solutions in an agile manner it is important to get things to them quickly and frequently.
What I want to do is build an abstraction and boiler plate for any .NET CMS systems that provides common functionality, in a maintainable, extendable, and testable way.
Have a look at my blog http://blog.gravypower.net/ or the wiki for more details.
Some icons by Yusuke Kamiyamane. Licensed under a [Creative Commons Attribution 3.0 License=(http://creativecommons.org/licenses/by/3.0/).