Rst fixes

Commit 1 fixes https://github.com/kivy/kivy/issues/1858.

Commit 2 makes rst raise an error when a files doesn't exist (through open) instead of ignoring it. Without it, when specifying a incorrect file path, you'd not know why nothing is showing. In places where non-existent external files are loaded through rst internal links, the preload function seems to be try/excepted anyway, so those errors would still be ignored.