Device won't enumerate after bootloader is programmed

I figured it out. Turns out the USB ports I was plugged into are bad. using a different computer or ports and it works great. The only other thing worth mentioning to anyone else having the same issue is, if you use the sparkfun bootloader, the led blink pattern will drop from ~5hz, to ~0.5hz once the bootloader believes its enumerated. This can be helpful with debugging. Also, if you are having these problems be sure to always try and use different cables and a different computer (if you have access to one).