Move the logic of meta description to a template tag.

- Create a meta description template tag that generates the description string.
- Use best-practices for translation. Instead of splitting the string into smaller pieces and concatenating them, we should make only one string that takes variables.
- Included new translations for the "ar" locale.

NB: It's a very bad idea to split strings for translation. For example instead of:
```python
person_name + _(" is eating ") + something
```
we should do:
```python
_("%(person_name)s is eating %(something)s") %
{
  'person_name': person_name,
  'something': something
}
```
This gives us some advantages:

1. The translator can see the full sentence so it's easier for him to translate it correctly.
2. The 2nd approach doesn't enforce any order because we are not concatenating strings. This is useful for some languages that have different sentence structure.