I only can help with the facebook share button:
The simplest way is to use the facebook share button, the advantage is, that it looks nicer on the facebook stream and You need very little code.
It is not longer recommended, so You as well could use the Like button. But there You would have some more code to let the button know, which page You are sharing.
Here an example for the share button:
1) Build an advanced theme
http://www.question2answer.org/advanced.php
Chapter: Creating an advanced theme for Question2Answer
2) Add for example the function
function q_view_main($q_view)
{
$this->output('<DIV CLASS="qa-q-view-main">');
$this->q_view_content($q_view);
$this->q_view_follows($q_view);
$this->post_tags($q_view, 'qa-q-view');
$this->post_avatar($q_view, 'qa-q-view');
$this->post_meta($q_view, 'qa-q-view');
$this->q_view_buttons($q_view);
$this->c_list(@$q_view['c_list'], 'qa-q-view');
$this->form(@$q_view['a_form']);
$this->c_list(@$q_view['a_form']['c_list'], 'qa-a-item');
$this->form(@$q_view['c_form']);
$this->output('</DIV> <!-- END qa-q-view-main -->');
}
3) Add somewhere inside this function the share button from:
http://developers.facebook.com/docs/share
Code:
$this->output('<a name="fb_share" type="button_count" href="http://www.facebook.com/sharer.php">Share</a><script src="http://static.ak.fbcdn.net/connect.php/js/FB.Share" type="text/javascript"></script>');
Done
I hope this helps to start with sharing.
You can provide othere features as You can see on the mentioned facebook developer site.
Rgds
monk333