Getting a custom area in a theme for dynamic content for page

I think I understand what you’re talking about. You would like to allow users to choose the amount of columns to be used for the page/post they are creating. You want to use different template files to achieve the different template layouts.

There are two ways of doing this. One is to use different template files as you mentioned and setting up a short-code to surround the different blocks in the post/page editor.

The other way which I believe is the best route is to use args to tweak the output of the content. SitePoint has a pretty easy to follow article explaining this method. If you’re interested here is the article:
http://www.sitepoint.com/split-wordpress-content-into-multiple-sections/

The only problem I’ve encountered using the methods above are explaining to users how they work. The content that will eventually gets displayed in one, two, or three columns all gets added using a single text editor which is a one column editor. At first it seems to give users trouble, but they catch on quickly.

An option that I’ve not mentioned, but you might want to look into would be using Advanced Custom Fields to separate the content into blocks.