Improved cache usage of smarty_function_location()

- Read all information directly from the passed CM_Model_Location instance
- Adjusted tests: No cache used at all