implemented ViewHolder pattern for library lists