fix(directive): name anonymous functions

For debugging ease.
fix(app): watch $scope.$index and reloadItems

This adds reordering support using orderBy filter for example.

```html
  <div id="container" masonry>
    <div class="masonry-brick" ng-repeat="brick in bricks | orderBy:predicate:reverse">
       <img ng-src="{{ brick.src }}" alt="A masonry brick">
    </div>
  </div>
```

Fixes #21
merge