I found that every 0 seconds I was asking for a location update as per the requestLocationUpdates method, just a typo on my part. As always it was something small that was killing me. So instead of :
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, ll);
I should have had:
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 10000, 10, ll);
with the 10000 being equivalent to ten seconds. Once I changed this I was able to successfully run the app just fine with the updates updating correctly.