Added an optional Single Player Support and made Viewer optional.