Merge Upstream with dhacker29's additions

Signed-off-by: Andre Saddler <dresadd09691@gmail.com>