Some modifications to allow custom configs and options Part 1