Give context aware message if markup reuse fails

This change calculates the longest common substring between the server side rendered markup and the client markup and uses that to give context about failure to the developer.

The context is an extra message with comparison of where server and client markup started to differ: 

![image](https://cloud.githubusercontent.com/assets/35656/5238366/ed1b1c0a-78ae-11e4-810d-67afe4ca9817.png)

All feedback is appreciated.
I have a feeling that it's not going to work correctly across browsers. But since it's just for a debug message, I think we can live with it for now and see how it behaves.