Implement project_source_state
Some serious cross comitting