What I would like to do is have the user click a point, then just like when drawing a circle with the built in CamBam function, I would like the user to be able to drag a polyline out to the size they require and click to confirm the size.
Sizing, scaling, rotation etc are all done through each object's Transform matrix.
However, it sounds like you are wanting to make this more interactive which would mean getting into writing custom EditModes.
If it helps any, the next 0.9.4 release is mostly about improvements to the toolpath generation engine (CAM).
The next round of development for 0.9.5 will focus on improving the user interface and adding to the existing CAD functionality. This will include nicer ways to interactively scale, stretch and rotate objects.
I'm quite looking forward to that work, as with toolpath and geometry work, I can spend days and even weeks writing, testing and debugging a concept that most users won't notice (other than hopefully their cutters won't snap).
Whereas with the UI stuff, a few days tinkering can bring the 'look and feel' of the program on leaps and bounds.
Oh, and while I'm asking, is there a function to rotate an object about its centroid, rather than the drawing origin?
There is no single function to do this. In code you could do it easily by manipulating the transform matrices.
In the UI, you could do something like this.
. Select object, then Draw -> Pointlist -> Centers (or Extents)
. Edit->Transform->Center
. Rotate the object by using the transform matrix editor
. Then Edit->Transform->Translate (click the origin as the source and the original center as destination)