The page template method dates back to before the settings > reading method existed, and people still spread it as the way to do things. Even though it may not be the best way.
I'm not sure why you would bother to use postmeta for controlling the layout of a page (both widget areas and general layout), that's what page templates are for, unless you're trying to do it for individual posts (which don't exactly support custom templates). I can see the usefulness of the related pages/posts. However, for the blog page, I don't see why you would have related pages to it. You should be able to modify home.php (see http://codex.wordpress.org/Template_Hierarchy) to do what you want layout wise without using postmeta at all.
The root page thing for custom post types was added to Breadcrumb NavXT to bring the functionality that the "Page for Posts" has to custom post types, as WordPress does not have an equivalent setting. Hence, why the classic Post post type does not have this setting (well it actually does have it, the settings page just doesn't expose it). I'm very hesitant to expose this as it really does not seem necessary, and may lead to confusion for those doing things the proper way with the "Page for Posts" setting (would be possible to have two different pages set as 'root').