Move PatientList into its own reusable component

Also:
- Always pass a key to patient list items (to supress React warning)