Set the default category of an attachment

To solve the problem 1, you could hook to add_attachment and edit_attachment hook.

add_action('add_attachment', 'wpse_set_attachment_category');
add_action('edit_attachment', 'wpse_set_attachment_category');
function wpse_set_attachment_category( $post_ID )
{
    // if attachment already have categories, stop here
    if( wp_get_object_terms( $post_ID, 'category' ) )
        return;

    // no, then get the default one
    $post_category = array( get_option('default_category') );

    // then set category if default category is set on writting page
    if( $post_category )
        wp_set_post_categories( $post_ID, $post_category );
}