Auto complete AngularJS component with ability to select multiple and nested items.