using concrete classes instead of interfaces
Moving internal class to end of class file as per JLS recommendation
small optimization
first stab at source filter
update packet filters