Try using the rewrite rule suggested in the user manual.
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
Im not an expert with apace rewrite module, but yours definately looks wrong. You wouldn't want your application and system folders to be accesible from a browser. The best practice is actually to keep it outsite your web root folder.
Furthermore i see no reason to call the welcome method from the index method, instrad of just keeping the logic in the index controller.
But your idea of:
hostname/folder/class/function/parameters
Is very true :)
And last but not least, you have probably forgot to leave index file in your config.php blank, which you will need to do if you want to remove index.php.
Good luck (:
EDIT:
Try using this in your htaccess file:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond $1 !^(index\.php|images|robots\.txt|css)
RewriteRule ^(.*)$ ./index.php/$1 [L]
</IfModule>
And in your config.php remember to add a trailing slash.
With this it works here.