Unify elgg_require_js and elgg_load_js

### Covered cases
#### Vanilla js vendor
```php
elgg_register_js($name, $src);
elgg_load_js($name);
```
#### Vanilla js simplecache view
```php
elgg_register_js($name, elgg_get_simplecache_url('js', $view));
elgg_load_js($name);
```
#### AMD vendor
```php
elgg_register_js($name, $src, 'async'); // or elgg_register_js($name, array('src' => $src));
elgg_load_js($name);
```
#### AMD shimed vendor
```php
elgg_register_js($name, array('src' => $src, 'deps' => $deps, 'exports' => $exports));
elgg_load_js($name);
```
#### AMD view
```php
elgg_load_js($view);
```
Have in mind `elgg_load_js` can also be called before `elgg_register_js`.

Refs #6496.

* [x] Make sure @mrclay is no longer blocking the PR
* [x] Convert [blog post][1] to rst and add to this PR (with corrections)
* [ ] Point to the rst doc from Evan's [AMD refering blog post][1]
* [x] Check for existing elgg_require_js() calls (still used at least in the groups plugin)

 [1]: http://blog.elgg.org/pg/blog/evan/read/224/elgg-19-amd-for-js-modules