Run cron execution triggered by user requests and added emailing notification cron handler.

It will check to see if it is time, by default one hour from last cron run, to run cron execution on each user request, and added lock to prevent cron run multiple times in concurrent situation. 

Added a simple email notification cron handler, sourced from notification table.

If wants to added some other cron handlers, just simply listens to 'system.cron' event, example below:

Event::listen('system.cron', 'MailNotifyHandler@onAggregateNotification');