Cache templates created from string SSViewer_FromString

I am not totally sure that this is a desired feature for all, but it is for me at least, so I have made it default to not caching with the option to change it through the config system. The cache occurs based on an sha1 hash of the template contents, meaning that if the sting changes a new cache will be created.