PENTrack - a simulation tool for ultra-cold neutron, protons and electrons