I've started coding a much more flexible skin engine. Basicially, what it comes down to is allowing the skinner to make his own forms. The buttons on every form are interchangeable -- so, if you want to add a "Get Movies" button to the web browser, or a "Stop music" button to the weather screen, you will be able to. Albeit, these are bad examples, but it still gives you an idea of how flexible this is going to be. Each form is going to start out as nothing, and it's up to the skin files to create the form and place all the buttons, labels, etc. on them.
Let me know what you guys think of this idea.