Added login screen, refactored CanvasObject, added error checking in global configuration