Adding marker() nodes

From @Gregwar (original pull request #939)

This introduces marker() nodes.

Markers are preserved during the CSG rendering, the contents is evaluated just like echo so you can pass it variables etc.

The advantage is that you can "mark" some parts of your code, and then access your markers in the CSG, simple to parse, to get for instance the locate coordinate system at a certain point from the origin of the part

See #937

TODO:
* [x] Make marker() experimental
* [ ] Add tests

To move out of experimental, we need some discussion on this feature, as well as documentation, but we can handle that in a separate pull request