ContainerBuilder: Add support for aliasing service definitions

At the moment there is no sensible way how to rename a service without massive BC break, that's why some of the "Nette" services use prefixes, some not etc. This PR tries to fix this by adding support for service aliases to `ContainerBuilder`.
Open question is whether or not to automatically trigger deprecation warning when the old name (=alias) is used instead of the new one.