I would approach this as a problem in discrete-time survival analysis, where the goal is to estimate the dependence of the conditional (on being employed at the start of the year) probability of termination over a year (equivalently, the annual termination rate):
$P(T = t | T \geq t)$
where $T$ is the random time of termination and $t$ is a particular year.
I don't think you really care about the probability of termination as such, and you can always recover the probability of termination over a particular timescale, under particular conditions, from an analysis of the one-year conditional probabilities.
This requires organizing the data in a particular way (which, incidentally, will answer your two questions). You need an observation for each employee for each year they were at risk of termination; that is, they need to be employed at the start of the year, and it should have been possible for them to be terminated during the following year. With respect to deaths and retirement, you have a few options about the latter point. You can either drop that observation (employee-year) entirely, in which case you'll end up with a model of the annual probability of termination conditional on the employee not dying or retiring, which might be perfectly adequate for your purposes, or you can incorporate the death and retirement rates into your model along with the termination rates, and use multinomial logit rather than logistic regression. Obviously, the latter is more involved.
When you organize the data in this way, your dependent variable becomes "whether or not the employee was termination during that year". Your independent variables might vary from employee to employee, from year to year, or both.
Note that if an employee isn't employed at the start of a year, that year doesn't enter the analysis at all. If you keep the fractions of a year without making any special adjustment, then that fractional year is contributing the wrong amount to the likelihood function. You can rewrite the likelihood function to adjust for this, but then it's no longer logistic regression.
How do I deal with independent variables that changed in the 4 year window? For some employees, I will have 4 "records" - one for each year. For example: salary, performance rating. Do I just simply take the most recent record, or do I keep all 4?
You will have 0-4 records for each employee, depending on when they started and when they were terminated.
How do I deal with people who terminated for reasons like retirement or deceased? Remove them from the model? Keep them in and set them to not terminated?
The simplest solution is to remove the year in which they retired or died, but you would keep all years before that (if any). Setting those years to "not terminated" assumes that anyone about to retire wouldn't have been terminated (maybe that's plausible) and that anyone about to die wouldn't have been terminated (plausible or implausible, depending on the specific case).
For more information about the logic behind discrete-time survival analysis, my go-to reference is Jenkins' Easy Estimation Methods for Discrete-Time Duration Models. Paul Allison's book on survival analysis in SAS is also good, regardless of one's feelings about SAS.
Regarding the last question:
There are many, many titles in the organization. I'm assuming I should collapse these into smaller groups and isolate each as a dummy variable (i.e. 0 if not director/1 if director; 0 if not manager/1 if director).
Yes. I'm guessing you don't even have observations of both termination and nono-termination for every title. Some domain knowledge is going to help here.