Automatic assigment of layer by buildfile location

Buildfiles are now automatically assigned to <layer> when placed in:

buildfiles/cross/cross-<layer>
buildfiles/native/native-<layer>

Provided that <layer> is defined in the master config LAYERS list.

If <layer> is not defined in the LAYERS list buildfiles in these
locations will continue to default to the "default" layer.

However, the .layer file will still take priority if used.

This feature makes it much more easy to assign multiple buildfiles to a
single layer by not having to create a .layer file for each buildfile
but instead by simply putting them in the right layer directory
location.
Improve buildfile type identification
Added support for "no-parallel-build" option

This commit adds support for forcing a buildfile to be built in
non-parallel by introducing a new options list and a special toggle
option named "no-parallel-build".

To force a buildfile to be built in non-parallel, simply add to
buildfile:

options=no-parallel-build

This is reported to be useful for eg. kernel module builds which must
avoid to be built at the same time because they operate in the same
kernel build workspace.

In the future, more options might be supported in the options list.
Added support for "no-parallel-build" option

This commit adds support for forcing a buildfile to be built in
non-parallel by introducing a new options list and a special toggle
option named "no-parallel-build".

To force a buildfile to be built in non-parallel, simply add to
buildfile:

options=no-parallel-build

This is reported to be useful for eg. kernel module builds which must
avoid to be built at the same time because they operate in the same
kernel build workspace.

In the future, more options might be supported in the options list.
Merge branch 'no-parallel-build-option' of github.com:buildgear/buildgear into no-parallel-build-option