API for graph filtering.

This API manage graph filtering. Its job is to execute filtering query to produce subgraphs. Filters are combined in queries that are passed to the system to be executed. The result of a filter query is a subgraph, a subset of the original graph that is represented as a `GraphView`.

The role of the `FilterModel` is to host current queries. Each workspace has its `FilterModel`.

The controller hosts the current `FilterModel`, for the current workspace.