Much better intro and updated abstract