Massive rewrite of Template class to implement template inheritance, along with a fallback template (different than concept of a default which just helps catch void in user prefs). As suggested by Alexandros, a caching mechanism replaces the heaps of file_exists() calls in previous implementation, although this introduces more complexity, so watch for bugs! Inheritance implies changes in stylesheet and javascript file loading, in that now all such files inherited from all ancestors are loaded in case a template falls back to one of those ancestors (or the fallback set). Template config file caching and an easy API to get those settings also implemented. Finally, when a template set falls back to another set with a different template engine for a given page, the engine is swapped out dynamically (although this is less than ideal and should be discouraged when authors are creating template sets).
git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@11791
7612ce4b-ef26-0410-bec9-
ea0150e637f0