Draft blog post part 2, src restructuring and source improvements.