Refactor linkify code

- mv public/javascripts/linkify.hs public/javascripts/lib/linkify.js
- Redefines linkify() as an AMD module
- Moves specific "link type" regexps and transformation out of linkify function to avoid re-allocation on every call
- Adds test cases for inline linkification (adapted from cases originally  written by by @gnarf under Apache License)
- Replacement operation in two steps
- Escape message contents
- New Dependencies:
    - requirejs (the node module)
    - amddefine
    - grunt-contrib-nodeunit

Signed-off-by: Rick Waldron <waldron.rick@gmail.com>