added abstract, minor cleanups