Default [Q]need ALOT of help and clarification.

Hello, I was looking into getting a custom rom on my rooted device but the more I searched on how to do it the more I was confused. Here are some of my questions:

1) what is bootloader and do you need to have it unlocked to get a custom ROM?
2) what is a custom recovery and do you need it to get a custom ROM?
3) what is flashing?