* BUGFIX: Fix calculateExp so that it won't return a too small result
Due to floating point rounding issues, when applying the inverse
operation and flooring, roughly half the time we would get the next
lower skill level. This quickly finds a slightly higher result that
gives the correct inverse.
* clearer test layout