Is there a way to allocate an email to a designated user based on email subject?

Hi there

I have the following requirements from a customer:

Are these possible, and how would you go about it?

Requirement #1:

Configure system to send and receive emails from a supplied email address

Requirement #2:

Configure system to allocate incoming emails on the designated mailbox into one (of three) possible cases dependent on the subject of the email (TYPE1, TYPE2 or TYPE3)

Requirement #3:

Assign cases to one of three employees, depending on the subject of the incoming email

Requirement #4:

Facilitate the ability to allow customers to log a case in the system, which is then auto assigned to a designated employee