Make EmoticonHook not hard-coded and easy to extends

<table>
  <tr>
    <th>Q</th><th>A</th>
  </tr>
  <tr>
    <td>Bug fix?</td><td>no</td>
  </tr>
  <tr>
    <td>New feature?</td><td>no</td>
  </tr>
  <tr>
    <td>BC breaks?</td><td>no</td>
  </tr>
  <tr>
    <td>Tests pass?</td><td>yes</td>
  </tr>
  <tr>
    <td>License?</td><td>MIT</td>
  </tr>
</table>

It would be better to move properties `Decoda\Hook\EmoticonHook->_emoticons` and `Decoda\Hook\EmoticonHook->_map` in private visibility. But it's cause a back compatibility break.