I send out CAD files for laser cutting. I do CNC milling in house. We have a 2 HP knee mill. I am in the process of retrofitting a 5 HP 24 position tool changer bed mill. The CAD screen shots are from a cheesy free CAD software. I used to manually write the CNC programs just getting the numbers out of CAD. Now I use an offline version of the mill's software along with a DXF import feature. I can't do 3D contouring unless I program it by hand, which I have for the inside of our billet intake manifold.
You definitely could use a nice cad cam system like Solidworks/mastercam. Makes things soooo much easier.
I use Pro-engineer for design and Pro-manufacturing for programming. My garage has a small machine shop in it which includes a Tree CnC Knee mill. It has a 5HP motor and uses Cat40 holders...but the tool change is manual. The machine positions itself in a home position when it see's the M06T# value, has an Op stop, I change tools and hit cycle start again.
The additional HP will certainly help, and if you have the rpm you could take advantage of insert cutters if you already haven't. Is your machine a CAT40 tool holder type?