  A comprehensive description of methods, suitable for solving the kinetic
equation for fast ions and impurity species in tokamak plasmas using Monte
Carlo approach, is presented. The described methods include Hamiltonian
orbit-following in particle and guiding center phase space, test particle or
guiding center solution of the kinetic equation applying stochastic
differential equations in the presence of Coulomb collisions, neoclassical
tearing modes and Alfv\'en eigenmodes as electromagnetic perturbations relevant
to fast ions, together with plasma flow and atomic reactions relevant to
impurity studies. Applying the methods, a complete reimplementation of the
well-established minority species code ASCOT is carried out as a response both
to the increase in computing power during the last twenty years and to the
weakly structured growth of the code, which has made implementation of
additional models impractical. Also, a benchmark between the previous code and
the reimplementation is accomplished, showing good agreement between the codes.
