some refactoring. Course and Propsoal stores. Fake storage. better types