call_user_func_array() expects parameter 1 to be a valid callback, array must have exactly two members

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.