Initial commit

Most of the work originaly done by Reverser35