My personal preference would be to do 3 VMs, DC, File/Print and Exchange, but you could potentially get away with merging the first 2. I like to try keep my DC as a solo role, but that's not always totally feasible. And a single Server 2012 license gets you 2 VMs (so long as you've only got the Hyper-V role installed on the host) so this may be a limiting factor for you.

40 CALs is enough, depending on the type of CALs you get -- either per-user or per-device, and depending on the number of users and devices. Also remember that you're going to need separate Exchange CALs.

Finally, it could potentially be worth looking into hosted Exchange instead of running it in-house. A proper cost-analysis usually shows it to be a better value for money, but it does depend on your environment.

It really comes down to if your users plan on hooking up smartphones or using OWA, etc.

If they'll be using multiple devices then you're better off w/ user CALs but if you have staff that will never access it other than from outlook on a desktop then you could get a device CAL for that desktop.

Or if you have multiple shifts where staff share common PCs then device cals can make sense in that situation also.

What are you using the back up the exchange database(s)? It's not just a matter of copying an EDB file off to the NAS, unless you want some huge hassles down the road with log files and trying to restore things.