How do I create a token that automatically gets urls convert to trackable links?
The BAO responsible for trackable URLs is CRM_Mailing_BAO_TrackableURL link here.

Because the MailingJob is available in hook_civicrm_tokenValues you could do something like this:

// job details to get mailing_id 
$job_id = civicrm_api3('MailingJob', 'getsingle', array(
        'id' =&gt; $job,
));
// get event_queue_id
$queue_id = civicrm_api3('MailingEventQueue', 'getsingle', array(
        'job_id' =&gt; $job,
        'contact_id' =&gt; $cid,
));

$url = 'https://example.com';
$trackableUrl = CRM_Mailing_BAO_TrackableURL::getTrackerURL($url, $job_id['mailing_id'], $queue_id['id']);


RE: "wyswyig button that pulled in auto-generated content" 
HTML Buttons plugin for CKEditor does what you describe, I have a couple of dropdowns with buttons that insert complex HTML snippets, is what I use for composing newsletters.