Templetazied ForeachStatement

I am currently stuck at the semantic analysis.
because depending on the type of the expression that is itterated foreach does diffrent things
how I check If the itterated type has thoose methods ?
-  `popFront()`/`front()`
-  `opApply`

sorry this was not intended. As I said this is work-in-progress not a commit.