Added header comments, fixed indentation. reaady for merge