The parameters are fairly wrong here:
add_options_page(
'Theme Options',
'Theme Options',
'administrator',
__FILE__,
array('KD_Options'),
'display_options_page'
);
Because you are within a Class, the callback needs to be array( $this, 'display_options_page' )
and not just a function name. You use that array format for WP callbacks within classes so that they are correctly referenced.
However, add_options_page
takes 5 parameters, not 6, and they should be:
add_options_page(
$page_title,
$menu_title,
$capability,
$menu_slug,
$function
);
So something like this should work:
add_options_page(
'Theme Options',
'Theme Options',
'administrator',
'wpse_233388_slug',
array( $this, 'display_options_page' )
);
You might be better off using a real capability rather than a role name for your capability too. That way other roles can be allowed the capability without making the users concerned administrators.