HTML5 Solutions: Essential Techniques for HTML5 Developers