Restructured for gradle, updated UI, and increased minSdk