Index: wp-includes/category-template.php
===================================================================
--- wp-includes/category-template.php	(revision 6092)
+++ wp-includes/category-template.php	(working copy)
@@ -242,6 +242,8 @@
 		'child_of' => 0, 'feed' => '',
 		'feed_image' => '', 'exclude' => '',
 		'hierarchical' => true, 'title_li' => __('Categories'),
+		'title_before' => '<h2>', 'title_after' => '</h2>',
+		'before' => '<li class="categories">', 'after' => '</li>'
 		'echo' => 1
 	);
 
@@ -259,9 +261,9 @@
 
 	$categories = get_categories($r);
 
-	$output = '';
-	if ( $title_li && 'list' == $style )
-			$output = '<li class="categories">' . $r['title_li'] . '<ul>';
+	$output = $r['before'].$r['title_before'].$r['title_li'].$r['title_after'];
+	if ( 'list' == $style )
+			$output .= '<ul>';
 
 	if ( empty($categories) ) {
 		if ( 'list' == $style )
@@ -289,7 +291,9 @@
 	}
 
 	if ( $title_li && 'list' == $style )
-		$output .= '</ul></li>';
+		$output .= '</ul>';
+		
+	$output.=$r['after'];
 
 	$output = apply_filters('wp_list_categories', $output);
 
