feat(dropdown): refactor dropdown directive (fixes #74)