Proposal: set refNode and pageNodeId from the constructor

In my app I put some HTML code in the body (e.g. header and footer) before initializing the app in the `page` node. Then, the `page` node is initialized in the `last` position inside the `<body>`, as instructed in `Application.js:setPageNode()`.

In such case the resulting HTML will be:

```html
<body>
    <header>A pre-existing header</header>
    <footer>A pre-existing footer</footer>
    <div id="page"></div> <!-- The newly created widget node -->
</body>
```
while the `<footer>` should stay in the last position, before closing the node.

A first solution could be setting the `Appliaction.js:refNode` in the application constructor, as follows:
 
```html
<body>
<head>
    <!-- snip -->
    <script type="text/javascript">
            require(["myApp/App"], function(App) {
                new App({
                    // Use the page_container instead the body
                    refNode: document.getElementById("page_container") 
                });
            });
    </script>
</script>
</head>
<body>
    <head>An header</head>
    <div id="page_container"></div> <!-- App will go here -->
    <footer>The footer</footer>
</body>
```

(see the diff on how I would make it - I'm not a fan mixing args from the constructor, but this is more a dojo way for widgets and also it would allow to set the `pageNodeId`)

Feedback? I love the simplicity of dojomat and I'm worry to complicate it, but I'm trying to apply it to my use case that is a more complex application and I think this is a common case for many developers.