CRM-15256 : Repeating Events With Core Recursion

Fix includes points 1 - 9 from http://wiki.civicrm.org/confluence/display/CRM/Recurring+Events%3A+Implementation+Plan

To Summarize:
Recursion library - When
Core Recursion and schema design, for recurring entities in general
Events: Create / generate, Update, and UI for Repeating Events. Parent-Child listing on manage event & dashboard, 
Search option to include participants from the repeating set of specified event.

Note: Code is in beta state. We 'll be doing more iterations to make it stable.
Would be good to get some feedback from core team early on. 

Complementary PR to packages repo: https://github.com/civicrm/civicrm-packages/pull/74
At a minimum, we need some kind of assertion that generate() returns the right number of records. Ideally, we should ensure that the dates of those records are correct under the given schedule.