How do I get my loop.php to properly paginate?

I don’t know what’s inside featured-content-slider.php, but I’m assuming this is the loop you’d like to paginate:

query_posts('category_name=featured-news');

The issue is that by calling query_posts like this in the template, you’re overwriting the original query for the page and not setting any page parameter. Your two options are to either modify the original query string, stored in the global variable query_string:

query_posts( $query_string . '&category_name=featured-news' );

or a better method is to modify the query with an action hook before it happens, so you’re not simple overwriting the original. This example would go in your theme’s functions.php, here we check if it’s the home page and modify the query by setting category name:

function wpa54691_filter_pre_get_posts( $query ) {
    if ( $query->is_home ) {
        $query->set( 'category_name', 'featured-news' );
    }
    return $query;
}
add_filter( 'pre_get_posts', 'wpa54691_filter_pre_get_posts' );

For additional queries, like this one further down:

query_posts('category_name=other-news&showposts=6');

You should use a new instance of WP_Query instead.

$args = array(
    'posts_per_page' => 6,
    'category_name' => 'other-news'
);
$other_news = new WP_Query( $args );
while( $other_news->have_posts() ):
    $other_news->the_post();
    $the_title();
endwhile;

If you’re also using query_posts within featured-content-slider.php, you’ll need to change that as well so as not to interfere with your primary loop.