Generic analytics abstraction which supports a number of backends