smarter handling of data with Ractive.extend() - prototype chains are maintained, and instances cannot break subclass data (closes #344)
prevent infinite recursion with ractive.update() (when called with no keypath)
closes #345 - ractive.data can now be an array instead of an object
rebuilt