Working on exporter/export.py

(cherry picked from commit ca214d9b94c992a17c118c506f25a753336767d6)

Conflicts:
	.gitignore
	tools/exporter/export.py
	tools/exporter/uvision4.py
Creates project files but the file names and attributes are wrong

(cherry picked from commit 862b1a2f808035936b0c75095afc3caa9da5862d)

Conflicts:
	tools/exporter/uvision4_k20dx128.uvopt.tmpl
	tools/exporter/uvision4_k20dx128.uvproj.tmpl
Listing source in the project file. Need to do the same for paths now...

(cherry picked from commit 4345d4c7c3f6723ddcfd174edbbc2bf0092747f9)

Conflicts:
	README.md
	tools/exporter/yaml_parser.py
Flatten the include directory and source directory. Still need to add some flags to the files for file type (maybe in uvision4.py). Creates new project_file directory but needs to be root aware for relative paths

(cherry picked from commit 4def793590342556f6a926886b9dbfd2108a9d5e)

Conflicts:
	tools/records/bootloader_common.yaml
	tools/records/rtos.yaml
	tools/records/usb.yaml
[Exporters] uvision project - files path and extension

(cherry picked from commit 298b5a22d7efa8251bec9688f399705497044d20)

Conflicts:
	tools/records/bootloader_k20.yaml
[Exporters] include paths correction in template

(cherry picked from commit 7fe444fb81c169872ec39509f8e30c5c6aec612c)
[dev_exporter] update ctx to support .o and .ar files. Update uvision template to support default file settings.

(cherry picked from commit 7d798a4e777b77800ddc8951126d4f797e8b681a)
[Exporters] File names/paths for uvision, flash algo for k20 record

(cherry picked from commit b8841665d449d182797a3e63c013aa6ceb2babbd)

Conflicts:
	tools/records/uvision.yaml
[Exporters] source files (s and cpp) uvision path/name, yaml - flash/usb corrections

(cherry picked from commit dc10e5f94468058d2d6341eebbbf13b9c2a7031d)
[Exporters] export.py - remove commented code

(cherry picked from commit fff525af51dd7d8fe3e2a3cb29322eb29bfb01fd)
[Exporters] Project within own directory, expand_data method for uvision

(cherry picked from commit 9ffe2fa84005c4729ca0f78a1db4e627b36111b1)
[Exporters] Template for projects file, which defines all projects to be built

(cherry picked from commit 43591c526c4f2eb64c204079d94ef0aae6b5a435)
[Exporters] export.py - new arg - project

(cherry picked from commit 2a4e7d8e7993e334e88ac77c037f9ae3bb873b69)
[Exporters] Generating - Empty yaml files are ignored

(cherry picked from commit dc6b91d3e2a0ea751a369fa7b69cfbef47df45a5)
[Exporters] Improvement in handling non-existing yaml files

(cherry picked from commit b8ec4f633be082c68895e15d1b3a5d3336cdcd0f)
[dev exporter] Add multiple file extensions to the list of files for a given project

(cherry picked from commit b16a4a115751ea5a0db5e885b2ef08f242bfef71)
[Exporters] non-clean group support, uvision template ignores it at the moment

(cherry picked from commit f7ecb3266de738121552f7cc526e492fc4d6c9db)
[Exporters] flatten obj,lib applied, removal of debug prints

(cherry picked from commit d86e0298268cdcb3f0025e7bcf7e266448104820)
[dev exporter] added list check in template file (may not be necessary) trying to remove [] and [[][]] from source. print help if no parameters are given.

(cherry picked from commit 3d1c75082353aa6a55974e9f9f41786be0e25a15)
[Exporters] Export script should always return to CMSIS-DAP root

(cherry picked from commit 3fc39c4fdfb2298ec617453d3bf214ababe0a370)