Clearly the machine is in the workshop of a practical man.The OP doesn't mention any previous CNC experience and there are two ways of considering this; with some experience you have a head start on understanding the principles you need to apply or without experience you won't have to unlearn the ways of a particular piece of software in the event of choosing something different.

For my own home brew machine I chose to run LinuxCNC as a machine controller,partly because its free,partly because I have used Linux for several years and feel comfortable with it and partly because it makes fewer demands on older computer.Having said that, the very cheap Windows 7 box I found on ebay had enough hard drive capacity that I converted it to a dual boot machine in case I ever needed to run a Windows program that wouldn't work under Wine in Linux. I installed Freecad on both partitions for generating the Gcode and it does a good job once you learn it's quirks.

As far as configuring the machine is concerned you can find a lot of knowledge for any course of action you decide to take.I looked at Arduinos and found I didn't really understand the language they apply to the operations.They do a good job and seem to be utterly reliable once you understand them.I found it a little easier to use the breakout board that came with a Longs motor 3 axis stepper kit although specific advice was scarce at the time.Setting up LinuxCNC wasn't too hard but I was puzzled by the process of testing the motion by moving plus and minus 30mm until I understood the movement that was described didn't mean exactly what I thought it would mean. I still need to set up home and limit switches,but since I found that the location of the home position persists even after you switch the computer off,it hasn't been too pressing and I'm having more fun making stuff than I would tinkering with switches.It is on the "to do" list.The good thing is that you can download LinuxCNC and transfer it to a DVD or a memory stick and run it as a live installation without changing anything on your computer.You can do this as often as you like and if or when you decide to install it isn't hard to do.You can also download the Arduino GRBL or Universal Gcode Sender (and others) to try out.If you don't like any of them the option of buying one of the systems that operates on Windows will still be there and you can take it up.