Remove/Add widgets from/to the Available Widgets pool

You can use the function unregister_widget to remove widgets.

E.g. you can remove the Calendar widget with:

function my_widgets_init() {
    unregister_widget( 'WP_Widget_Calendar' );
}
add_action('widgets_init', 'my_widgets_init');

To add widgets, use the Widgets API.