Processing .app.src.script expects a single value to be returned.

file:script returns a single value, not a list like file:consult.

Previously, one would get an unexpected_terms error.
Is there a reason we check for result of `file:consult/1` here? It seems useless given we checked for the `.app` extension right before, and sounds like we could accidentally start accepting broken app files.

I'd put the case at lines 176-181 into the clause at line 174 to make sure we only do that dynamic switching when we really need to.

An alternative (likely safer) form could be to try and see what we can do with filename:extension/1:

```erlang
1> filename:extension("~/code/self/rebar/rebar.app").
".app"
2> filename:extension("~/code/self/rebar/rebar.app.src").
".src"
3> filename:extension("~/code/self/rebar/rebar.app.src.script").
".script"
```
This can be used as the root of a `case`:

```erlang
case filename:extension(Filename) of
    ".app" ->
        file:consult(Filename);
    ".src" ->
        rebar_config:consult_file(Filename);
    ".script" ->
        {ok, [Term]} = rebar_config:consult_file(Filename),
        {ok, Term}
end.
```
This seems equivalent in its logic, but stricter and less likely to let through bad configs that will then clash with what the rest of the system expects.