Change FactsetId to use OldIdentifier instead of string

Roughly, I think you could probably simplify a bit by restricting date generating to more realistic bounds (i.e. 1950-2100 or so), which gets rid of your edge cases.