Add generic Makefile.rules
Addressed issue #28 of onnokort
Generate *.map files, adresses issue #30 by onnokort
Modify all of the examples to use the Makefile.rules
Fixed the flashing function
[BUILD] Add source library path to the examples makefile to override default paths
[BUILD] Splitted long lines in targets definition
[BUILD] Add better autodetection of libopencm3 paths

In previous way was a bug, because in CLEAN library, there is no *.a files, so it cannot be detected that way.

With this commit, locm3 will be searched in:

./libopencm3 [the default if the user want use makefile.rules in his own project]
../../../../../libopencm3 [building in the examples]
$(TOOLCHAIN_DIR) [installed version in the toolchain path]

So it enables to the user that he may grab the Makefile.rules and copy it to his working directory and benefits same setting of compiler for library and his code. He may benefit from generic flashers and so on ...
[FIX] Correct the compilation of C++ files (prepared for the future)
[FIX] Move out ARCH_FLAGS from the LDFLAGS and CFLAGS, CXXFLAGS
[FIX] Library paths and preprocessor defines should be in CPPFLAGS, Reorganization of *FLAGS

Using:
http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html#Warning-Options
http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html#Preprocessor-Options
http://gcc.gnu.org/onlinedocs/gcc/Link-Options.html#Link-Options
http://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html#ARM-Options
[BUILD] Use the automatic variable RM=rm -f