refactored server routes, added project schema + API methods