feature(calendar): Add timeFrames display and conflict solver.

This adds display of timeFrames into gantt component.

It also adds solve function to Calendar object.This function is able to solve
an array of timeFrames into another coherent one for a requested date range.

The solve algorithm uses two simples rules.

1) If at least one working timeFrame is defined, everything outside
defined timeFrames is considered as non-working. Else it's considered
as working.

2) Smaller timeFrames have priority over larger one.