Adapted from html5boilerplate to suit my own workflow