Initial commit, started writhing introduction and implementation.