Split project up in to independent modules