Bug 919980 - [B2G][messages] mms attachment file naming mechanism refinement for Latin language

Non-ascii characters are percent encoded where possible.
* Percent encoded filenames are decoded for display
* Filenames which will exceed the 40 character limit after encoding are normalized
  * If that does not sufficiently reduce the final characters below 40, non-valid characters are replaced with '#'
* Filenames with escape sequences (i.e. attempts to inject script tags) are escaped while encoding and decoding