Refactored based on improvement suggestion from Jason Calabrese; single profile object can now contain timestamped arrays of values.