add "add" method to LocationUtils

same as Location.add, except it returns a new location instead of changing the values of the provided location.
call onChange when the chunk is loaded
add PlayerTracker internal class

moved code from JCGEventListener and PlayerUtils to PlayerTracker

added player session time tracking