These days, I would start with an empty MVC web project (3 or 4, can't say I've tried 5, and some parts I don't think work correctly in 4, but everything I've tried does), and use NuGet to install packages.
YMMV, but for my use, I find this setup works:
Project 1: Domain : holds entities
Key Packages: SharpArch.Domain ; Iesi.Collections (for ISet functionality)
Project 2: Infrastructure: mappings, conventions
Key Packages: SharpArch.NHibernate
Project 3: Presentation: controllers and views, html helpers that aren't shared between projects [this is the project created by Visual Studio]
Key packages: SharpArch.Web.Mvc
Project 4: Tasks : all the heavy lifting of data manipulation and retrieval
Key packages: SharpArch.NHibernate
Project 5: ViewModels: does what it says on the box
Key packages: None. Keep this as simple as possible. It references your Domain and is referenced by your Presentation and your Tasks. AutoMapper or the like can be used. It may need SharpArch.Domain, which is OK, depending on how exactly you're using it.
Project 6: Tests: unit tests
Key packages: SharpArch.Testing.NUnit
That setup works really well for me, and I don't get stuck with extra stuff from templify, or trying to move stuff around because last I checked, S#arp didn't employ a ViewModels project. I prefer to keep my ViewModels out of my Domain, so that if I see a Domain reference in my controller (instead of a Task layer reference) or in a View (instead of a ViewModel reference), I at least make sure it's there for a really good reason.