[feature] refactor to OOP and implement double random method
[test] rand and randint, with known seed