Add interimElement

Implemented the `$interimElementFactory` to create `$interimElement` services. Implemented `$materialDialog` and `$materialToast` using the `$interimElementFactory`.
This implies that the `hide` actions will run in parallel with the `show`. If you want it to run in sequence should we not chain these?