Update NUCLEO_F401RE-device.mk

I updated this makefile to have the TARGETS_FOR_DEVICE exactly match
what I see in the mbed SDK Python build process.  I also updated to use
the same floating point flags as well.
Properly wrap main()

The mbed SDK expects the main() function to be wrapped so that it can
call mbed_sdk_init() and mbed_main() before calling the real main()
function.