Add support for async attr in script blocks

We already have `defer` support, but `async` was missing. This PR adds `async` attribute support exactly the same way `defer` is already implemented today.

That is, if all files have the `async` attribute, the output script tag will have it too.