Seeing you have the small Canon SL1 I would suggest keeping the lens little also as primes do not have IS and that would keep it more balanced on the smaller camera.
The Canon 60mm macro is an amazing lens and perfect for that camera.
Would also be useful for portrait work also.
I'm in love with the 100mm 2.8 (I have the old, non IS version.) I have a number of really good lenses, but I still think my 100mm macro is the best of the best. Clear, sharp, gorgeous quality. Many times I use it for portraits and anything I can, simply because it's the best. (with my crop sensor, I can't really use it indoors for portraits).
If price is #1, here's an option: An EF-M42 adapter, and some M42 (pentax screwmount) lenses, with a set of M42 extension tubes.
Quick perusal of ebay found these approx. prices:
adapter: $12
tubes: $8
55mm f/2 super-takumar: $30
It'll let you focus close, but it won't be as quick as easy as the Canon macro lens because you'll have to select the right length tube and screw it on.
Also, it will be completely manual shooting, no AF and no P mode, and you select the aperture on the lens.
My favorite is the 55mm f/2.0 super-takumar, it's got an old fashioned look to it and I almost always shoot it wide open. The 55mm f/1.8 SMC takumar has a little bit less character but it's sharp.
For macro you might want something longer but fairly fast, like a 135mm f/2.5 but it's a bit pricey. The 135mm f/3.5 is cheap, and I have one, but it's tough getting high enough shutter speeds with the extension tubes and close up.
If I remember correctly, you won't quite be able to focus to infinity with m42 mount lenses on Canon EF mount. Not an issue for macro or portraits which are what these are best for.
This method is probably the cheapest but it's not as user-friendly as the autofocus Canon macro lenses, which are excellent but expensive.