Refactoring code & structure
Resolve issue #3 and #6

- Remove observer, use event i18n:languageChanged instead
- Rename event switchLanguageSuccess to i18n:languageChanged
- Always convert a language to lowercase string
Improve to manage i18n dictionary

- Improve: i18nProvider.add method accepts name of constant service,
constant service object or array of them. Issue #1
- Refactor: Rename setDebugMode method to enableDebugging
Modify DOC
Modify DOC
Resolve issue #2

- i18n directive accepts a parameters in one of formats: an object, an
array of values or only value
- Refactor i18n service, use angular.isArray instead of isAnonymous flag
Resolve issue #7

i18n service accepts a parameter as string, Object or Array
Merge pull request #8 from kiddy2910/2.0.0

Merge 2.0.0 to master