CAD tools

This integrates CAD tools in QGIS application.

This is roughly the port of CADinput plugin to core, with some fixes and improvements.

A QEP has been issued: https://github.com/qgis/QGIS-Enhancement-Proposals/pull/8
tr() already is a QString.  But is it necessary to handle '°' specially at all?