* Values are not always casted before being rendered into a template.
* Casting information can by dynamically provided by $casting_properties, rather than being hardcoded to $casting and $db.
* Removed unneeded ViewableData_Iterator - ArrayIterator is instead used.
* Removed ViewableData_ObjectCustomised - now just uses ViewableData_Customised.
ENHANCEMENT: Added template and value methods to database fields.
MINOR: Added ViewableDataTest and extended DataObjectTest.
From: Andrew Short <andrewjshort@gmail.com>
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@88474 467b73ca-7a2a-4603-9d3b-597d59a354a9