for the lazy:)
part 1
part2
part 3
part 4
part 5
part 6