Agnostic markup for tab title and content

Currently tabs rely on &lt;h3> and &lt;div> for tab and content respectively. Since &lt;h3> is a semantic element it probably shouldn't be used to mark up the tab. &lt;div> is fine for content.

It would be better to make calculation of tab and tab content agnostic of HTML elements used so that only two siblings (any elements) are necessary. 

I used :first-child and :last-child selectors so that now any two consecutive elements become tab and tab content. This allows for richer markup of actual tabs.

 ![snapshot1](https://f.cloud.github.com/assets/1570698/85813/e67647c6-6479-11e2-9379-8b5b0d0a6762.png)