This method also needs to be virtual
Removed unused == operator
Fixed usage of boost::shared_ptr to bool conversion
Moved TraitUtil namespace into own file

Also moved some general utility functions from GenericEffectTrait into
this namespace.
Added additional functions to TraitUtil

These functions allow to determine if there actually is a position of
direction available without the overhead of the present functions.
Made argument handling use template arguments.
Added page-in mechanics
Also call update in game_simulation_frame()
Fixed ParticleSource compilation
Fix compilation of ParticleSource.h
Moved ValueRange to TraitUtil namespace.