Initial implementation of GUI framework