Welcome to Crypto SE : - )
These concepts operate on different levels, so I would first advice you to make a mental diagram of the layers here. On top you have homomorphic encryption in general, which I assume you are already familiar with. It turns out that in all (fully) homomorphic constructions we know of, each ciphertext has some associated noise, and there can be many equivalent ciphertexts that decrypt to the same thing, but have different noises. Typically, when operating on ciphertexts the noise of the result is strictly larger than the noise of operands, and it keeps increasing to the point that ciphertexts become unusable. Bootstrapping prevents this to happen; this technique cleans the ciphertext so that it can further be used in homomorphic operations.
(You might be confused as to why it is called bootstrapping. This is because the technique's ground idea is to homomorphically evaluate the decryption algorithm, e.g., the encryption scheme uses its own decryption circuit to obtain a cleaner ciphertext.)
The rest of the concepts are specific to one particular construction of a homomorphic encryption scheme; please refer to @Mark's answer.