Add option to set fixed hosts for chromecasts instead of discovery
Re-organized core for better reusability