Various additions and changes made.