Implements automatic view selection
this MR implements how the view is selected when "automatic view" is checked. Each view contains a "isApplicable" function to define if the view is suitable or not for these data. The first in the view server which is suitable for the dedicated data is selected as the current view. If none is applicable, then the default view is selected.