Some comments added; clean up