The firmware is the software that drives the hardware. Basic terms:
Configuration (aka. config) and table parameters determine the operation of the firmware: they can be changed during normal operation at runtime and saved permanently to EEPROM (eg. with "mcs" menucommand). All features have some configuration, see GenBoard/InitialConfig
Runtime variables like current RPM or lambda (AFR) one cares about when monitoring the operation of the system: one might want to log them to PC or MMC flash memory card for later analysis. These are not "runtime configurable".
Compile time variables are similar to configuration in the sense they determine the firmware operation. However, changing these require changing the my_make file, recompiling the firmware and uploading into the microcontroller.
BootLoader is a small, simple piece of software that lives in the upper 2kb of the AVR's flash that makes it possible to change (upload, upgrade, reflash) the firmware to a custom-compiled (with one's own settings for compile time variables) or a firmware distributed by someone else.