List: added filterItems(...)

Added backwards compatible item-filtering functionality to the List Actor.

You may filter the list through a given String such that it a List item must contain that String to be displayed in the List.

Filtered items are not removed from the List's 'items' array backing as set by setItems.

getItems functionality hasn't changed, so current dependencies will not break.

I factored out the metrics calculations from setItems(Object[]) into its own private routine, recalcMetrics(), such that the filterList(String, boolean) method may use it as well.

I'm currently using this exact List implementation in my app where the user types into a TextField, which then filters the List items on what they are concurrently typing.  It works marvelously.