refactor(*): extract CountryList service

CountryList will provide a list of countries
Merge branch 'refactor-country-list'
fix(directive): fix typo
refactor(controller): introduce a function name