Various cleanups to Ubuntu installation instructions:

* Avoid editing /etc/apt/sources.list add nginx repo, instead create
  /etc/apt/sources.list.d/nginx.list

* Avoid editing /etc/nginx/nginx.conf, instead put server_name_hash_buckets
  setting into discourse.conf

* Proper-case Discourse when it is referring to the product name, so that all
  the lowercase references are to the user created during the installation
Address @Supermathie's concerns in PR1430
Simplify characterCode lookup

Reduce String.fromCharCode that can’t be optimized by the minifier.
Combine single path conditional
Remove unused variable

It is only set to empty then passed
Update indexOf polyfill

Updated from the same source as the original comment. If IE8 isn’t
supported then this can be removed.
Add JSHint to Travis validation

Run before the install as it acts as a fast fail vs the gem install time
Add jshintignore for failing files
JSHint: Add strict comparisons to poll_ui.js
making the mobile composer opaque, may fix clicks from falling through
Firefox: Reuse same contenteditable <div> instead of creating a new one on paste.

This fixes the issue where every alternate paste from a different source
would not work because the content wasn't getting pasted into the
contenteditable div randomly.
Merge pull request #2093 from awesomerobot/master

making the mobile composer opaque, may prevent clicks from falling through
Merge pull request #2094 from vikhyat/firefox-paste-image

Fix Firefox image paste contenteditable hack
improve quick tips PM all new user copy
few more quick new user tips tweaks
Merge pull request #2092 from nschonni/jshinting

Jshinting during CI build
Add support for arrays to PluginStore
Merge pull request #2097 from ligthyear/pluginstore-array-support

add support for arrays to PluginStore
updated spanish translation
FIX: Link counter was broken for some https links