markers directive support for expressions

@aesnyder @gitnik @kandizzy @cthrax @zacronos 

So this might cause a movement to 2.1.0 as this is a breaking change to how Markers handles functions. IE it will no longer call functions within a model. Instead it will call expressions which expect a model as a argument. At the same time it evaluates objects, and function al string expressions in html as well. 

If it the expression results in a string then it falls to the models properties. This functionality is already there for polyline, polylines polygon, and polygon(s)
Nice, cleaned up the code quite a bit too.