Proper gradle-izing, part 1
Part 2
Part 3
Part 4
Part 5
Part 6
Part 7