PR re-factoring
Beautify the code. Extract some methids. Extract all native into one dll