device log api

REQUIRES DEVICE LOG REINDEX to add user_id field
@cory the 'domain' is passed to the `dispatch` method by django which is how it ends up in the kwargs (becuase of the way the URL pattern is constructed) so it should always be there.

I've added this which blindly adds the domain filter in query even if it is already in the query (there doesn't seem to be a good way of telling if the filter is already there) then it still gets added again. Don't think there should be any performance issues with doing this.

To find out if the filter exists is something like this which could be quite brittle so I've left it out.
```
def has_domain_filter():
            for child in object_list.query.where.children:
                for constraint in child.children:
                    if constraint[0].col == 'domain' and constraint[-1] == bundle.request.domain:
                        return True
```