MSNBC calls it for Barack Obama; Republicans still too close to call, though Romney leads.