projects edit functionality, closes #31