fix(install): Make installer usable on smartphones
chore(install): Point docs links to learn.elgg.org instead of docs.elgg.org

Refs #6784
fix(file): download adds header Content-Length
fix(file): destroy output buffer before sending file
fix(ui): Corrected bad stretching of non-square, large avatars. Now upscaling by width.

Fixes #5602
Merge pull request #6968 from tacid/patch-1

fix(file): download adds header Content-Length
fix(router): Can return 'handler' param in `'route', $identifier` hook again

In 1.8, it was possible to delegate to a different page handler by registering
a callback for the `'route', $identifier` plugin hook that looks like so:

```php
$result['handler'] = 'other';
return $result;
```

Then during 1.9 it was changed to expect the key to be 'identifier':

```php
$result['identifier'] = 'other';
return $result;
```

This change makes it so that both approaches will work as intended.

Fixes #6696
Merge pull request #7005 from mrclay/ewinslow-page-handler-bc-b6696

fix(router): Can return 'handler' param in `'route', $identifier` hook again
fix(upgrade): test for ability to connect to localhost if rewrite test fails

Fixes #6888
Merge pull request #7006 from mrclay/beck24-rewrite_error_test

fix(upgrade): test for ability to connect to localhost if rewrite test fails
docs(upgrading): Added upgrade instructions for 1.8 to 1.9

Closes #5900
fix(collections):  make urls work regardless of username

Fixes #6059 - adds a second parameter 'owner' to the url for pages listing collections owned by a user.
Previously the page could not be accessed if the username was 'add'
Merge pull request #6958 from beck24/collections_pagehandler

fix(collections):  make urls work regardless of username
Merge pull request #7000 from Srokap/ticket_5602

fix(ui): Corrected bad stretching of non-square, large avatars. Now upscaling by width.
Merge pull request #6984 from ewinslow/docs-upgrading

docs(upgrading): Added special upgrade instructions for 1.9
Merge pull request #6967 from ewinslow/install-mobile

fix(install): Mobile-friendly installer
fix(rss): River entries include their full correct summaries again

This causes the rss viewtype's river/item view to fall back to the
item's default viewtype in order to capture custom logic that
determines what the summaries should be, since the river's summary
view (`river/elements/summary`) doesn't know how to handle all
possible river items, especially now that we have a `target` field
in the river.

Fixes #6901
chore(notifications): remove docs referring to annotation/relationship support

Closes #6837
fix(deprecation): the deprecation wrapper correctly handles array access

When array access is used on the wrapper, the wrapper now checks the wrapped
object for ArrayAccess. If found, it uses that instead of property access.
This also emits deprecation warnings on array access, which were left out
accidentally.

Fixes #7017, #6917
fix(thewire): More effective textarea change detection