Added some more comments. Made sure all stages where consistent.