Removes "executable" attribute from components

TL;DR - Components shouldn't be executable anyway.

I deal with Rack apps for my day job and use Pow for local development.

Running PHP apps with Pow installed is… difficult. In order to get this
app to boot, I had to add a trivial Rack app in order for Pow to work
with PHP.

When this Rack app serves files with an executable flag, it tries to
execute those files before sending them down the wire, as if they were
PHP files resulting in a 500 error.

Removing the executable flag prevents this from occurring.

See also: https://github.com/eric1234/rack-legacy/issues/12

This also adds an entry to .gitignore to ignore the Rack app I needed in
order to boot the app.
Adds some missing `<?php` content prefixes

Not sure if this is just a difference in PHP versions or not, but in
order to get the app to boot on my machine with PHP 5.6.0alpha1, these
files needed a `<?php` prefix as opposed to `<?`
Adds initial package.json
Removes JSHint error that ES5 is already TRUE

See also: http://jslinterrors.com/es5-option-is-now-set-per-default/
Changes project whitespace rules to actually fit what is used

These dotfiles mandate 4-spaces of indent, but most of the code uses 2.

Additionally, 2-spaces is easier to read on GitHub.

This also converts index.html to use the new 2-space rule while also
correcting some inconsistencies.
Relaxes the JSHint indent requirements
Add check if suggestions table exists before creating in migration
Adds initial Node-based app server
Moves all public assets to a static content folder

This is idiomatic Express pattern.

This also removes the Git submodule for Isotope because git submodules
are a pain to deal with.
Add backwards compatible Hashtag backend via /api/tags
Convert tweets table to use UTF8MB4 to support Emoji

This changes the character set of the tweets table to use the full
4-byte UTF8 encoding to ensure that emoji content is properly persisted.

See: http://mathiasbynens.be/notes/mysql-utf8mb4 for more info.
Add Twitter Stream integration

I chose to remove the camelCase enforcement from JSHint because the
twitter library does not use camelcase config keys.
Integrate existing UI with new /api/tags route
Add backwards compatible Tweets backend via /api/tweets

* Integrate UI with new route
Remove all PHP code for the user-facing pages & Twitter stream parsing
Manage client-side dependencies with Bower

* Add a bower.json file to declare the app's client-side library
  dependencies

* Remove non-dependency management installed scripts

  All client-side dependencies are managed by Bower and are
  removed from the repo. This reduces the size of the repo,
  documents specific version requirements, and documents the source
  of the libraries.

  In the case where a suitable Bower version could not be found
  (like infobox and polygon-contains), the scripts were vendored
  in the `public/vendor` folder.

* Remove custom jQuery UI build and replace with the full library

  Instead of relying on a custom build to pull in only the
  components required, use RequireJS to define an AMD
  module of the desired UI widget to include it's dependencies.

  Additionally, remove an unneccesary dependency of `nbhoods-view`
  on the autocomplete widget.
Remove vestigial entries in .gitignore
Add HTTP Basic Auth protected Administration page
Add backwards compatible Suggestions backend via /api/admin/suggestions
Add backwards compatible Hashtag metrics controller via /api/admin/metrics