Hi Dominic
It sounds to me like you need a real milling machine for what you want to make. However, you would need to determine the maximum size of your parts, in order to determine if a "standard" milling machine is large enough to do everything. The common sizes of milling machines (most readily available) will likely be about 28" X travel by 12" Y travel, or 32" X by 17" Y. In the form of a common "vertical turrent mill", you would likely have a 5 or 6" Z quill travel, but the table will also hand crank up and down to give you another 8 inches of vertical work space.
A router is generally not as heavy duty of a machine (but it depends on how much iron was put into it of course). A router is more generally used for 2d profiles, since it may have quite a limited Z travel on the spindle.
Consider that a good machine vise takes up 5" of height on a milling machine table, and you will see you don't have much room for a tool hanging down from a router with a 6" Z space.
You can hardly go wrong buying a vertical milling machine. They are easy to get and easy to sell. You can buy a manual one and convert it to cnc or buy one that is already cnc ready, maybe in need of a new control or something. There is lots of good 1980's iron around, with crappy old controllers, just begging for a new control to be retrofitted on.
RE: gcode: you may not have seen gcode, but most likely it was there in the background. You may have been using what is called a "conversational controller" which, at first glance, seems to be more user friendly to program, because you just input geometry that you already understand, and it writes the program from that.
I've never run a conversational controller, because real men prefer gcode, and women really like a guy who knows gcode
Anyways, gcode is nothing to fear. Its like the difference between writing and shorthand. Is one better than the other? No, but one is a hell of a lot more succinct than the other. With a little practise, gcode means exactly what you want to say, with very little redundancy. From what little I have experienced of conversational controllers (via the posts required to make code from a modern cadcam program), I wouldn't want one if you gave it to me.
Modern cadcam programs take into account the method of tool entry into the work, as well as cleaning out the bulk of material safely, from any shape of workspace.
First you get good, then you get fast. Then grouchiness sets in.
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)