Restructuring Project

Breaking the solution into multiple projects, for eventual expansion
into other aggregators that perhaps share functionality.