smartLoad title extraction fixed.

`internal.smartLoad` fails if there’s no `<title>` element. This PR fixes it.

It’s usually not recommended to change different things in one PR, but I also changed the `.querySelector` call in the same function with `document.getElementById` which is faster and supported everywhere. (update: it was a mistake, it has been reverted)