We've just released the Tags plugin for Movable Type as part of our Power Tools collection, and there's an accompanying interview with Brad Choate which covers some of his thoughts on creating the plugin.
The Tags plugin meets the needs of a lot of ProNet members who've asked for this type of functionality, but it's also a good basis for building new work on top of, as we're releasing it under the Artistic License.
From a user interface perspective, Tags is implemented as a replacement for the Keywords entry field. In combination with a custom application template, the plugin replaces the Keywords box with a single-line Tags field that lets you enter any tags you want and assigns them as categories to the entry when the entry is saved. As a user, you might want to choose to hide the display of the Primary Category dropdown if you're using Tags as a replacement for categories.
From a template level, this functionality acts like a new way of creating categories. If a tag name is entered for a category that doesn't yet exist, the category is automatically created and assigned to the entry. The plugin also includes a few custom template tags to help you pull out categories that have the "<!--tag-->" hint that indicates that they are tags.
If you're using both tags and categories, there's a simple way to have the application distinguish between them: If you have a category named "Tags", tag-categories that are created "on-the-fly" through the Keywords field will be assigned as a child to that category. If you don't have a "Tags" category, then they are created without any parent. Once the tag-category is created, it isn't altered again, so you can reassign it's parent if you want to organize them in some way.
And finally, it wouldn't be tags without an accompanying weighted list, so you can check out Dan Wolfgang's writeup of how to turn your new tags into a cloud. If you do so, you'll want to consider Zeldman's words on the subject.