Empty object proxies are not truthy in {{#if}}

This addresses at least one issue in #1812
Allow {{action}} to support string literal params
Support string literals as param for {{linkTo}}

Previously, Handlebars (and thus Ember) did not
disambiguate between arguments passed to helpers
in `stringParams` mode, which Ember uses for
data binding.

For example, there was no different between
{{#linkTo post popular}} and
{{#linkTo post "popular"}}.

In both cases, Ember would try to look up the
"popular" property on the current context.

Now, Ember allows you to specify string literals
as arguments. {{#linkTo post popular}} would look
up the "popular" property on the current context
and generate a URL pointing to the model with that
ID.

{{#linkTo post "popular"}} would treat the string
literal "popular" as the model.

This is useful for cases such as filters, where
you may have several different view options
hard-coded in your template:

  {{#linkTo posts "all"}}All Posts{{/linkTo}}
  {{#linkTo posts "popular"}}Popular{{/linkTo}}

If your router looked like this:

  App.Router.map(function() {
    this.route('posts', { path: '/posts/:filter' });
  });

The "model" for `App.PostsRoute` would default to
`{ filter: <filter name> }`, and the URLs generated
by the `{{linkTo}}` helper would be `/posts/all`
and `/posts/popular` for the examples above.

As of now, only a single dynamic segment is
supported, even when not using `_id`-style segments.
We expect to lift this restriction in the future.

Note that this entire feature is not yet fully
complete and may change before it lands in the
next release of Ember. If you want stability,
please continue to use `.pre4` for now.
set default_external for ruby 1.9
Abstract clearing observers on willClearRender
fix bug where history location does not account for root URL
load hooks now run hooks defined in ENV
refined pre-Ember load hooks