Support for argument middleware, joining arrays

Might come in use!
Moved to line 117 (var locale = (typeof phrase === 'object') ? phrase.locale : getLocaleFromObject(this);)
I had to do this to be able to pass the locale into the middleware function.