The Richmond CS courses look fine, but the class schedules at http://registrar.richmond.edu/planning/schedule/current.html and http://registrar.richmond.edu/planning/schedule/previous.html indicate that many of the 300-level courses are infrequently offered (perhaps once every two years). If you attend Richmond, you need to consider that you may have just one chance in four years to take some of those courses (once during junior and senior years, since you will be taking lower level CS prerequisite courses in your frosh and soph years), so you may not have as much schedule flexibility.