add EntityPath and AttributePath

starting refactoring of Reference to allow flxible syntax
(F(1)!F(2)!Prio)
refactor Reference to EntityPath and Ref with !

new DSL syntax:
(F(1)!F(2)!Prio) #== 3